安全性的两个基本是身份认证和授权
Principal是一个包含用户的标识和用户的所属角色的对象。
IPrincipal接口定义了Identity属性和IsInRole方法,Identity属性返回Identity对象;
在IsInRole方法中,可以验证用户是否是指定角色的一个成员。
角色是有相同安全权限的用户集合,同时它是用户的管理单元。
角色可以是Windows组或自己定义的一个字符串集合。
// 计算机名称
Console.WriteLine("计算机名称:", Environment.UserName);
// 计算机NetBIOS名称
Console.WriteLine("NetBIOS名称:{0}", Environment.MachineName);
// 计算机网络域名称
Console.WriteLine("网络域名称:{0}", Environment.UserDomainName);
WindowsPrincipal winPrincipal = new WindowsPrincipal(WindowsIdentity.GetCurrent());
// 验证用户是否是指定角色的一个成员
bool isAdmin = winPrincipal.IsInRole(WindowsBuiltInRole.Administrator);
if (isAdmin)
{
Console.WriteLine("当前用户:是管理员", Environment.UserName);
}
else
{
Console.WriteLine("当前用户:非管理员", Environment.UserName);
}
// 获取运行程序的路径
string fileName = Process.GetCurrentProcess().MainModule.FileName;
【C#】当前用户是否有管理员权限:WindowsPrincipal
原文:https://www.cnblogs.com/victor963/p/14467671.html