spades88
Goto Top

PS Skript funktioniert bei mir, aber bei meinen Kollegen nicht

Hallo in die Runde,

ich habe 2 PS-Skripte für meine Abteilung geschrieben um uns die Arbeit zu erleichtern.
Da "Skript 2" administrativ gestartet werden muss, startet "Skript 1" "Skript 2" mit Credentials.
Sieht dann so aus:
skript1

Bei mir klappt das auch problemlos, aber sobald meine Kollegen das "Skript 1" starten wird es komisch.

Das erste was mit auffällt ist das bei meinen Kollegen für einen Bruchteil von Sekunden folgende Fehlermeldung beim Start des "Skript 1" aufkommt:
skript1_error

Und danach erfolgt, trotz definitiv korrekt eingegebener Adminzugangsdaten, die im Skript hinterlegte Fehlermeldung
"Entweder ist der User 'XY' oder das Passwort falsch"

Weitere Fakten dazu:
  • Bei meinen Kollegen und mir ist in Powershell die ExecutionPolicy "RemoteSigned" festgelegt.
  • Beide Skripte habe ich signiert
  • der einzige technische Unterschied zwischen meinen Kollegen und mir ist,
dass ich mit Windows 11 / Powershell 5.1. (Build 22621.3958) arbeite und meine Kollegen mit
Windows 10 / Powershell 5.1 (Build 17763.5933) arbeiten.

Ansonsten arbeiten wir mit den selben Berechtigungen.

Reichen diese kleinen Unterschiede im Build schon aus dass das Skript bei den Kollegen nicht mehr funktioniert oder was könnte die Ursache sein?

Habt Ihr noch eine Idee?

Content-ID: 668405

Url: https://administrator.de/contentid/668405

Ausgedruckt am: 27.09.2024 um 03:09 Uhr

pcpanik
pcpanik 26.09.2024 aktualisiert um 13:20:11 Uhr
Goto Top
Du könntest auf den PCs Deiner Kollegen per Registry die Signaturprüfung temporär deaktivieren und testen, ob es daran liegt. DIe Fehlermeldung deutet ja darauf hin.

Mit Adminrechten per Regedit
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PowerShell\ExecutionPolicy
auf unrestricted setzen.

Wenn die mit GPO gesetzt wurde, wird das beim nächsten gpupdate artig wieder überschrieben.

Sofern das dann läuft ist die Frage, ob die PCs der Kollegen das Zertifikat, mit dem Signiert wurde, kennen.

Ergänzung zum Verständnis:
Der öffentliche Schlüssel des CodeSigning-Zertifikates muss auf den Systemen auf denen die Skripte ausgeführt werden sollen als vertrauenswürdig eingestuft sein.
Das geschieht über den Teilschlüssel „Vertrauenswürdige Herausgeber“ im Zertifikatsspeicher des Benutzers oder Computers.
Ted555
Ted555 26.09.2024 aktualisiert um 13:40:42 Uhr
Goto Top
Ich seh da diverse Scripting-Fehler, das man eigentliche "Boolean" Werte durchgehend überall als Strings mit Like vergleicht, arghhhhhhhhhh, mit Hammer auf Finger klopf ....
$? -like "false"
Autsch, Autsch Autsch Autsch ........

Warum Skript als Bild?? 🤔

Die Executionpolicy ist für Admins eh nur Fassade, mit einem "-Bypass" beim Aufruf entledigt man sich davon.

Ich würde empfehlen nochmal ganz vorne bei den Basics anzufangen.
https://learn.microsoft.com/de-de/powershell/scripting/learn/ps101/01-ge ...

Good luck.