我正在尝试通过 Ansible 脚本检查远程 Windows Server 2012 R2 计算机是否具有当前用户的管理员权限。我在网上找到了以下命令来检查管理员权限:
([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltinRole]::Administrator)
现在有关于此的几个问题:
1) 当我使用管理员帐户通过 RDP 进入任何系统时,此命令的输出为“false”。但当我通过 Ansible 运行该命令时,该命令返回“true”(Ansible 使用 winRM 从中央服务器发出命令)。
2)是否有更好的命令(CMD 或 powershell)来检查当前用户是否具有管理员权限?
答案1
当我以提升的管理员身份在 RDP 会话中运行时,您的命令始终会返回true
。请确保跑步你的 PowerShell作为管理员
当使用 winRM 或 Enter-PsSession 时,您的权限会自动提升。