我需要检查当前登录的用户是否是管理员,但是发现当AD组成为管理员组的成员时,仅使用“ net localgroup administrators”是不够的。
[编辑:]通常容易将管理员特权与特定实例的提升特权相混淆,我只想强调指出,此问题/答案不涉及过程提升状态检查。要求通常是确定登录用户是否是管理员组成员。更常见的是需要确定脚本是否以管理员权限运行。如果这是您所需要的,请改为查看:管理权限
在这种特殊情况下,有一个策略禁用管理员共享(排除了我与Windows XP一起使用的先前技术,即使用\ 127.0.0.1 \ admin $来测试管理员共享是否存在,以确定当前用户是否是管理员)。[/编辑]
以下是我收集并编写的代码,用于查看登录用户是否是管理员。
我希望这对其他需要与我做同样事情的人有所帮助。
如果有人可以提供更优雅的解决方案,将不胜感激!
如果要确定当前用户是否是本地Administrators组的成员(即使不是提升的用户),则可以使用以下选项。
whoami /groups /fo csv | convertfrom-csv | where-object { $_.SID -eq "S-1-5-32-544" }
您还可以使用isadmin.exe(https://westmesatech.com/?page_id=23)并检查退出代码2(管理员成员,但未启用,因此未提升)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句