尝试在服务器上配置远程 PowerShell 访问,但无法避免访问被拒绝错误。
我做了什么:
Register-PSSessionConfiguration
-Name EngrStudentAdmin
-RunAsCredential domaindelegatedAdmin
-StartupScript 'C:ScriptsStudentsWelcome.ps1'
-ShowSecurityDescriptorUI
(在一行上 - 显示上方以提高可读性)
使用权限 GUI,我授予了组委派管理员读取和执行权限。 启动脚本只是填充物。
$welcome = 'Welcome to ' + $env:COMPUTERNAME
Write-Host $welcome
尝试使用 连接到终结点
Invoke-Command
-ComputerName $server
-ConfigurationName EngrStudentAdmin
-ScriptBlock { hostname }
失败并显示错误
AuthorizationManager check failed.
+ CategoryInfo : OpenError: (engr-mgr1.domain.edu:String) [], RemoteException
+ FullyQualifiedErrorId : PSSessionStateBroken
- 服务器上的执行策略是远程签名,启动脚本已签名。
- 用于访问服务器的帐户是委派管理员组的成员。
- 以委派管理员身份打开本地外壳显示该帐户有权运行启动脚本。
- 使用本地管理员组的成员,调用命令(不带配置名称开关(即连接到默认终结点))执行,以便 winrm 服务正在运行并启用 PSRemoting。
- 委派管理员帐户没有配置文件。
我错过了什么?
检查 WMI 服务是否已启用并正在运行,如果禁用,请尝试启动它,然后重试。
还要检查实际文件的属性,它可能已被阻止。
两个域都加入了吗?如果没有,您可以采取几个进一步的步骤。一般情况下:在远程系统上尝试此操作:Enable-PSRemoting -Force -Verbose
如果您什么也没看到,则它已被应用。如果没有,这将为您进行必要的更改。
以防万一:检查您的防火墙设置:-)
正如Dewi所提到的:检查WMI服务。这是一个启用它的快速技巧(如果你想强制执行它):
# Configure WMI
Set-Item -Path wsman:localhostclienttrustedhosts -Value * -Force -Confirm:$False
# Restart
Restart-Service -Name WinRM -Force
最后但并非最不重要的一点是:使用-verbose
开关查看更多详细信息。
喜欢这个:
New-PSSession -ComputerName $ComputerName -Credential $credencial -Verbose
干杯乔希