program.cs

来自「C#高级编程第6版随书源代码 值得下载」· CS 代码 · 共 37 行

CS
37
字号
using System;
using System.Security.Principal;
using System.Threading;

namespace Wrox.ProCSharp.Security
{
	class Program
	{
		static void Main()
		{
         //AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.UnauthenticatedPrincipal);
         //GenericIdentity gi = new GenericIdentity("Tom");
         //GenericPrincipal gp = new GenericPrincipal(gi, new string[] { "Employee", "Manager" });
         //Thread.CurrentPrincipal = gp;
         
         AppDomain.CurrentDomain.SetPrincipalPolicy(
            PrincipalPolicy.WindowsPrincipal);

			WindowsPrincipal principal =
			   (WindowsPrincipal)Thread.CurrentPrincipal;
			WindowsIdentity identity = (WindowsIdentity)principal.Identity;
			Console.WriteLine("IdentityType: " + identity.ToString());
			Console.WriteLine("Name: " + identity.Name);

			Console.WriteLine("'Users'?: " + principal.IsInRole("BUILTIN\\Users"));
			Console.WriteLine("'Administrators'?: " +
			   principal.IsInRole(WindowsBuiltInRole.Administrator));
			Console.WriteLine("Authenticated: " + identity.IsAuthenticated);
			Console.WriteLine("AuthType: " + identity.AuthenticationType);
			Console.WriteLine("Anonymous?: " + identity.IsAnonymous);
			Console.WriteLine("Token: " + identity.Token);


		}
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?