Der folgende Code funktioniert gut, wenn ich es in der Powershell ISE als Administrator ausführen (dh ich die PS ISE als Admin starten)Invoke-Command läuft OK als Administrator, aber nicht als aktuelle Benutzer
Invoke-Command -ScriptBlock {[IntPtr]::Size}
Invoke-Command -ScriptBlock {[IntPtr]::Size} -ComputerName $env:COMPUTERNAME -Credential $Credential
Invoke-Command -ScriptBlock {[IntPtr]::Size} -ComputerName $env:COMPUTERNAME -Credential $Credential -ConfigurationName Microsoft.PowerShell32
ich die erwarteten Antworten von
8
8
4
Das sagt mir, dass WinRM richtig konfiguriert ist und läuft, und dass mein $ Credential richtig eingestellt ist. Allerdings, wenn ich versuchen, das gleiche in der PS ISE als Benutzer ausgeführt wird (mit oder ohne Administratorrechte) ich die folgenden Fehler für den zweiten und dritten Befehle erhalten
[<ComputerName>] Connecting to remote server <ComputerName> failed with the following error message : Access is denied. For more information, see the about_Remote_Troubleshooting Help topic.
+ CategoryInfo : OpenError: (<ComputerName>:String) [], PSRemotingTransportException
+ FullyQualifiedErrorId : AccessDenied,PSSessionStateBroken
Ich werde den Scriptcode mit etwas mehr werden ersetzt Substantiv, das aufgrund von Abhängigkeiten von 32-Bit-DLLs im 32-Bit-Modus ausgeführt werden muss, und die Möglichkeit für Benutzer, einen Teil des Codes im 64-Bit-Modus und andere Teile im 32-Bit-Modus auszuführen, ist wichtig.
Irgendwelche Gedanken?
Ist der Berechtigungsnachweis der gleiche wie Ihr Login? – Jimbo
@ Jimbo - Ja ist es, deshalb ist das so verwirrend. Auch das gleiche Zertifikat im Admin- oder Benutzer-Modus, und es funktioniert gut im Admin-Modus. – hsbatra