当前位置: 首页>>代码示例>>C#>>正文


C# IdentityReference.Translate方法代码示例

本文整理汇总了C#中System.Security.Principal.IdentityReference.Translate方法的典型用法代码示例。如果您正苦于以下问题:C# IdentityReference.Translate方法的具体用法?C# IdentityReference.Translate怎么用?C# IdentityReference.Translate使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Security.Principal.IdentityReference的用法示例。


在下文中一共展示了IdentityReference.Translate方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: RegistryAccessRule

		public RegistryAccessRule (IdentityReference identity,
					   RegistryRights registryRights,
					   InheritanceFlags inheritanceFlags,
					   PropagationFlags propagationFlags,
					   AccessControlType type)
			// FIXME: accessMask=0 likely causes an error
			: base (identity.Translate(typeof(SecurityIdentifier)), 0, false, inheritanceFlags, propagationFlags, type)
		{
			this.rights = registryRights;
		}
开发者ID:nzaugg,项目名称:mono,代码行数:10,代码来源:RegistryAccessRule.cs

示例2: SetPagingFileQuota

        public static void SetPagingFileQuota(long sizeBytes, IdentityReference user)
        {
            string sid = user.Translate(typeof(SecurityIdentifier)).Value;

            using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
            {
                using (var quotaKey = hklm.CreateSubKey(SystemVirtualAddressSpaceQuotas.quotaKey))
                {
                    using (var usersQuotaKey = quotaKey.CreateSubKey(sid))
                    {
                        usersQuotaKey.SetValue(pagingFileQuotaValueName, sizeBytes / Environment.SystemPageSize, RegistryValueKind.DWord);
                    }
                }
            }
        }
开发者ID:solakian,项目名称:windows-isolation,代码行数:15,代码来源:SystemVirtualAddressSpaceQuotas.cs

示例3: SetNonPagedPoolQuota

        public static void SetNonPagedPoolQuota(long sizeBytes, IdentityReference user)
        {
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }

            string sid = user.Translate(typeof(SecurityIdentifier)).Value;

            using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
            {
                using (var quotaKey = hklm.CreateSubKey(SystemVirtualAddressSpaceQuotas.quotaKey))
                {
                    using (var usersQuotaKey = quotaKey.CreateSubKey(sid))
                    {
                        usersQuotaKey.SetValue(nonPagedPoolQuotaValueName, sizeBytes / 1024 / 1024, RegistryValueKind.DWord);
                    }
                }
            }
        }
开发者ID:datatonic,项目名称:cf-windows-prison,代码行数:20,代码来源:SystemVirtualAddressSpaceQuotas.cs

示例4: InitializeContextFromSid

        private SafeAuthzContextHandle InitializeContextFromSid(SafeAuthzRMHandle authzRM, IdentityReference identity)
        {
            // Create the context for the user
            var securityIdentifier = (SecurityIdentifier) identity.Translate(typeof (SecurityIdentifier));
            var rawSid = new byte[securityIdentifier.BinaryLength];
            securityIdentifier.GetBinaryForm(rawSid, 0);

            SafeAuthzContextHandle userClientCtxt;
            if (!NativeMethods.AuthzInitializeContextFromSid(
                NativeMethods.AuthzInitFlags.Default,
                rawSid,
                authzRM,
                IntPtr.Zero,
                NativeMethods.LUID.NullLuid,
                IntPtr.Zero,
                out userClientCtxt))
            {
                throw new Win32Exception(Marshal.GetLastWin32Error());
            }

            return userClientCtxt;
        }
开发者ID:stefanschneider,项目名称:IronFrame,代码行数:22,代码来源:EffectiveAccessComputer.cs

示例5: CompareTo

 public static bool CompareTo(this IdentityReference left, IdentityReference right)
 {
   return left != null && right != null ? left.Translate(SecurityIdentifier).ToString().Equals(right.Translate(SecurityIdentifier).ToString(), StringComparison.OrdinalIgnoreCase) : left == right;
 }
开发者ID:alienlab,项目名称:Database-Management-Tool,代码行数:4,代码来源:SecurityProvider.cs

示例6: RemoveQuotas

        public static void RemoveQuotas(IdentityReference user)
        {
            string sid = user.Translate(typeof(SecurityIdentifier)).Value;

            using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
            {
                using (var quotaKey = hklm.CreateSubKey(SystemVirtualAddressSpaceQuotas.quotaKey))
                {
                    quotaKey.DeleteSubKey(sid, false);
                }
            }
        }
开发者ID:solakian,项目名称:windows-isolation,代码行数:12,代码来源:SystemVirtualAddressSpaceQuotas.cs

示例7: PurgeAuditRules

        public virtual void PurgeAuditRules(IdentityReference identity)
        {
            if ( identity == null )
            {
                throw new ArgumentNullException( nameof(identity));
            }
            Contract.EndContractBlock();

            WriteLock();

            try
            {
                _securityDescriptor.PurgeAudit( identity.Translate( typeof( SecurityIdentifier )) as SecurityIdentifier );
                _saclModified = true;
            }
            finally
            {
                WriteUnlock();
            }
        }
开发者ID:ChuangYang,项目名称:corefx,代码行数:20,代码来源:ObjectSecurity.cs

示例8: SetGroup

        public void SetGroup( IdentityReference identity )
        {
            if ( identity == null )
            {
                throw new ArgumentNullException( nameof(identity));
            }
            Contract.EndContractBlock();

            WriteLock();

            try
            {
                _securityDescriptor.Group = identity.Translate( typeof( SecurityIdentifier )) as SecurityIdentifier;
                _groupModified = true;
            }
            finally
            {
                WriteUnlock();
            }
        }
开发者ID:ChuangYang,项目名称:corefx,代码行数:20,代码来源:ObjectSecurity.cs

示例9: SetWorkingSetPagesQuota

        public static void SetWorkingSetPagesQuota(long sizeBytes, IdentityReference user)
        {
            if (user == null)
            {
                throw new ArgumentNullException("user");
            }

            string sid = user.Translate(typeof(SecurityIdentifier)).Value;

            using (var hklm = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64))
            {
                using (var quotaKey = hklm.CreateSubKey(SystemVirtualAddressSpaceQuotas.quotaKey))
                {
                    using (var usersQuotaKey = quotaKey.CreateSubKey(sid))
                    {
                        // this will block `testlimit -v`
                        usersQuotaKey.SetValue(workingSetPagesQuotaValueName, sizeBytes / Environment.SystemPageSize, RegistryValueKind.DWord);
                    }
                }
            }
        }
开发者ID:datatonic,项目名称:cf-windows-prison,代码行数:21,代码来源:SystemVirtualAddressSpaceQuotas.cs

示例10: SidFromIR

		internal static SecurityIdentifier SidFromIR (IdentityReference identity)
		{
			if (null == identity)
				throw new ArgumentNullException ("identity");
		
			return (SecurityIdentifier)identity.Translate (typeof (SecurityIdentifier));
		}
开发者ID:nicolas-raoul,项目名称:mono,代码行数:7,代码来源:ObjectSecurity.cs

示例11: SetOwner

 public void SetOwner(IdentityReference identity)
 {
     if (identity == null)
     {
         throw new ArgumentNullException("identity");
     }
     this.WriteLock();
     try
     {
         this._securityDescriptor.Owner = identity.Translate(typeof(SecurityIdentifier)) as SecurityIdentifier;
         this._ownerModified = true;
     }
     finally
     {
         this.WriteUnlock();
     }
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:17,代码来源:ObjectSecurity.cs

示例12: PurgeAuditRules

 public virtual void PurgeAuditRules(IdentityReference identity)
 {
     if (identity == null)
     {
         throw new ArgumentNullException("identity");
     }
     this.WriteLock();
     try
     {
         this._securityDescriptor.PurgeAudit(identity.Translate(typeof(SecurityIdentifier)) as SecurityIdentifier);
         this._saclModified = true;
     }
     finally
     {
         this.WriteUnlock();
     }
 }
开发者ID:pritesh-mandowara-sp,项目名称:DecompliedDotNetLibraries,代码行数:17,代码来源:ObjectSecurity.cs

示例13: SetOwner

		public static void SetOwner(this MessageQueue queue, IdentityReference identity, bool ownerDefaulted = false)
		{
			var securityIdentifier = (SecurityIdentifier)identity.Translate(typeof(SecurityIdentifier));
			SetOwner(queue, securityIdentifier, ownerDefaulted);
		}
开发者ID:gavacho,项目名称:System.Messaging.MessageQueue.SetOwner,代码行数:5,代码来源:System.Messaging.MessageQueue.SetOwner.cs


注:本文中的System.Security.Principal.IdentityReference.Translate方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。