Meine beste Vermutung ist, dass die Ursache dafür ein ausgefallener Kerberos-Multi-Hop ist.
Ich denke, was hier passiert ist, dass die computer2 nicht computer1 zugreifen, da sie den Anteil der computer1 ohne Login (zuzugreifen versucht Null - Sitzung) oder die Computer - Anmeldeinformationen von computer2 ( DOMAIN \ Computer2 $ ). Da dieses Login keine Rechte besitzt, schlägt das Lesen der Textdatei fehl.
Computer1- ->
Skript wird unter Ihrem Konto ausgeführt ->
Ihr Konto wird für den Zugriff auf Computer1 verwendet. ->
Läuft gut
Computer1 ->
Skript auf Computer2 ->
ausführen PowerShell stellt über Ihr Konto ->
eine Verbindung zu WinRM her. Sie haben Zugriffsrechte. WinRM akzeptiert den Anruf. ->
PowerShell sendet die Skripts an WinRM. ->
WinRM startet das Skript unter seinem Konto (Computer2 $). ->
Computer1 empfängt eine eingehende Anforderung an \ txtfiles vom Konto "Computer2 $" ->
Dieses Konto hat keine Rechte, daher wird dem Zugriff ->
Fehler verweigert
Als ersten Versuch würde ich versuchen, dem Benutzer Jeder Lesezugriff auf die Freigabe zu geben \txtfiles
. Wenn dies nicht hilft, versuchen Sie, Ihr Login mit an -credential domain\YourName
zu übergeben Invoke-Command
.
Ich denke, die Hauptursache ist Kerberos, da WinRM in diesem Dokument die Delegierung von Benutzeranmeldungen verwenden kann.