我需要运行一个Jenkins作业,该作业将在主机上的从机上执行。该作业包括在已记录的从属计算机上运行一些PowerShell脚本。 我正在使用一个帐户从主服务器登录到奴隶服务,我认为它没有管理员权限,因为当在本地运行时,作为管理员在机器上运行时,脚本的行为会有所不同。
如何确认提供给我的用户是否拥有管理员权限?
答案 0 :(得分:1)
在PowerShell 4.0及更高版本中,您可以使用脚本顶部的#Requires -RunAsAdministrator
注释来防止在当前用户未提升时脚本运行。对于早期的PowerShell版本,如果未使用代码提升当前用户,则可以终止脚本。例如:
$elevated = ([Security.Principal.WindowsPrincipal] `
[Security.Principal.WindowsIdentity]::GetCurrent()
).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
if ( -not $elevated ) {
throw "This script must be run elevated (Run as administrator)."
}