传递给get-winevent后,PSCredential变量停止为WinRM函数工作

时间:2019-01-22 16:58:05

标签: powershell authentication winrm

重新使用凭据对象时,我看到WinRM Client错误,但前提是我在Get-WinEvent上使用它之前,在Get-WindowsFeature上使用它。

如果我将Get-WindowsFeature替换为对服务器调用Invoke-Command的{​​{1}},并且使用相同的凭据对象,那么事情将按预期工作,但是这会导致我的不同部分出现其他问题脚本,我宁愿理解为什么它不起作用。

我已将事情简化到最低限度以证明错误,并做到了这一点。

Get-WindowsFeature

预期结果

Windows功能列表及其在server01上的状态

server01上的最新事件日志条目

Windows功能列表及其server01的状态

实际结果

Windows功能列表及其在server01上的状态

server01上的最新事件日志条目

$Cred = Get-Credential $Name = "server01" Get-WindowsFeature -ComputerName $Name -Credential $Cred Get-winEvent -ComputerName $Name -Credential $Cred -MaxEvents 1 Get-WindowsFeature -ComputerName $Name -Credential $Cred

1 个答案:

答案 0 :(得分:0)

为什么不试试看

$Cred = Get-Credential

$Name = "server01"

invoke-command -ComputerName $Name -Credential $Cred -ScriptBlock {

    Get-WindowsFeature

    Get-winEvent -MaxEvents 1

    Get-WindowsFeature

}