我正在尝试从MachineB在远程MachineA上运行一些NLB命令,并且在使用服务帐户时遇到“访问被拒绝”错误。当我以帐户身份运行时,该命令运行良好。
最初,从本地计算机运行命令时,我也无法运行命令。我遇到了同样的错误。即使我能够执行Enter-PSSession并运行简单的命令。但是按照本指南进行操作后,我就可以为我的帐户解决该问题了。这是一个双跳问题。
现在,我不知道为什么服务帐户不会执行这些命令。
$userName = "domain\account"
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $userName, $password
$Session = New-PSSession -ComputerName MachineA -Credential $Credential -Authentication Credssp
Invoke-Command -Session $Session -ScriptBlock {
Import-Module NetworkLoadBalancingClusters
Get-NLBClusterNode MachineA
}
}
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
+ CategoryInfo : PermissionDenied: (Microsoft.Netwo...tNlbClusterNode:GetNlbClusterNode) [Get-NlbCl
usterNode], UnauthorizedAccessException
+ FullyQualifiedErrorId : AccessDenied,Microsoft.NetworkLoadBalancingClusters.PowerShell.GetNlbClusterNode
+ PSComputerName : ComputerName
附加信息:服务帐户在计算机上是admin。我在事件日志中没有看到任何错误。当服务帐户登录时,我在事件日志中看到的是
Detailed Authentication Information:
Logon Process: Kerberos
Authentication Package: Kerberos
Transited Services: -
Package Name (NTLM only): -
Key Length: 0
当我执行Get-WSMANCredSSP时,会显示以下输出。这使我可以使用我的个人帐户执行invoke-command。
PS C:\Windows\system32> Get-WSManCredSSP
The machine is configured to allow delegating fresh credentials to the following target(s): wsman/machinenameB
,wsman/fullyqualifiedmachinenameB,wsman/machinenameB
This computer is configured to receive credentials from a remote client computer
其他信息:我发现帐户类型是Active Directory用户和计算机工具中的用户。用户属性上没有委托选项卡。这可能是个问题吗?
问题是用户不是我们NLB环境中任一clusterNode的管理员。在执行NLB时,我没有特别注意的是,当您使用PowerShell远程访问任何clusterNode时,即使您不打算迁移到其他服务器,该帐户也必须是所有节点上的管理员。因此,尽管该帐户是在一台服务器上的管理员帐户,但不在其中一台服务器上,所以该错误失败了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句