我已经注册了一个 PowerShell 配置以供使用,但遇到了一些困难。希望实现一种配置,允许服务帐户远程进入服务器并重新启动它,而不允许它执行任何其他操作,自然 JEA 似乎是最合适的。我使用以下内容注册了配置:
#Create Role Capability file
$ServerRestartRole2012 = @{
Path = "$env:ProgramFiles\WindowsPowerShell\Modules\JEAServerRestart\RoleCapabilities\ServerRestarter.psrc"
Author = "xx"
Company = "xx"
VisibleCmdlets = 'Restart-Computer'
ModulesToImport = 'Microsoft.PowerShell.Management'
}
New-PSRoleCapabilityFile @ServerRestartRole2012
#Create JEA Config
$ServerRestartConfig2012 = @{
Path = "$env:ProgramData\JEA\JEAServerRestart.pssc"
Author = "xx"
Description = "Allows for service account to reboot servers for Server Management Application"
SessionType = "RestrictedRemoteServer"
TranscriptDirectory = "$env:windir\Logs"
RunAsVirtualAccount = $true
RoleDefinitions = @{'xx\D7_APP_ServerRestart' = @{ RoleCapabilities = 'ServerRestarter'}}
}
New-PSSessionConfigurationFile @ServerRestartConfig2012
Register-PSSessionConfiguration -Name ServerRestarters -Path "$env:ProgramData\JEA\JEAServerRestart.pssc"
Restart-Service -Name WinRM
注册成功,我可以使用“D7_APP_ServerRestart”组中包含的帐户进入会话。使用Get-Command
我所期望的结果,但是在运行Restart-Computer
返回的消息时解释了Privilege not held
我是否缺少设置过程的一部分?
注册EndPoint的服务器是2012R2