首页 > Windows开发 > 详细

【C#】当前用户是否有管理员权限:WindowsPrincipal

时间:2021-03-02 11:02:29      阅读:36      评论:0      收藏:0      [点我收藏+]

安全性的两个基本是身份认证和授权
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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!