Ist die PowerShell Skript-Ausführung deaktiviert, kann man diese mit Hilfe mehrerer Befehle freischalten. Achtet bei der Freischaltung auf die Berechtigung.
PowerShell Skript-Ausführung deaktiviert – So lautet die Fehlermeldung:
Die Fehlermeldung wird in rot angezeigt und lautet:
Die Datei “C:\Users\vp\Desktop\pruefsummenvergleich.ps1” kann nicht geladen werden, da die Ausführung von Skripts auf diesem System deaktiviert ist. Weitere Informationen finden Sie unter “about_Execution_Policies” (https://go.microsoft.com/fwlink/?LinkID=135170).
+ CategoryInfo : Sicherheitsfehler: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnauthorizedAccess
Bei mir so passiert unter Windows 7. Übrigens ist auf Windows 7 nativ die PowerShell 2 installiert. Wer die aktuelle Version 4 nutzen möchte muss bei Microsoft das Windows Management Framework 4.0 downloaden.
So aktivierst du die PowerShell Skript-Ausführung:
Mit folgendem Befehl in der PowerShell aktivierst du die Skript-Ausführung, ohne jegliche sicherheitstechnische Aspekte zu berücksichtigen (Achtung, wirklich nicht empfohlen)
- Set-ExecutionPolicy Unrestricted
- Nicht signierte Skripte können ausgeführt werden, Warnmeldungen werden bei jedem Aufruf ausgegeben
Nach Klick auf “Return” erscheint die folgende Informationsmeldung:
Die Meldung lautet: Ausführungsrichtlinie ändern: Die Ausführungsrichtlinie trägt zum Schutz vor nicht vertrauenswürdigen Skripts bei. Wenn Sie die Ausführungsrichtlinie ändern, sind Sie möglicherweise den im Hilfethema “about_Execution_Policies” unter https://go.microsoft.com/fwlink/?LinkID=135170” beschriebenen Sicherheitsrisiken ausgesetzt. Möchten Sie dei Ausführungsrichtlinie ändern?
Als Auswahl erhält man JA / NEIN und ANHALTEN
Wer auf seinem System lokal mit PowerShell herumexperimentieren möchte, kann sich dies so einstellen. Beachte dabei, dass du nun ungeschützt gegenüber nicht signierten und für böse Zwecke gescriptete PowerShell Cmdlets bist. Allerdings wird auf der Seite “about_Execution_Policies” (obiger Link) beschrieben, dass die default execution policy die “Restricted” sei. Beachtet dies bei Eurer Entscheidung.
Es gibt noch folgende, in Sicherheitsbelangen eingeschränkten Befehle (Man kann jeden Befehl mit -force vervollständigen, dabei wird die Rückfrage unterdrückt, ob man die Einstellung tatsächlich haben möchte…):
- Set-ExecutionPolicy Restricted -force
- Default Policy, Ausführung von Skripten nicht möglich
- Set-ExecutionPolicy AllSigned -force
- Skripte können ausgeführt werden, Skripte und Konfigurations-Files müssen signiert sein
- Set-ExecutionPolicy RemoteSigned -force
- Empfohlene Einstellung!
- Default Policy für Server 2012 R2, Skripte laufen, Skripte und Konfigurations-Files müssen signiert sein, jedoch eigene auf dem lokalen PC erstellte Scripte brauchen keine Signaturen
- Set-ExecutionPolicy Bypass -force
- Alles funktioniert, keinerlei Warnmeldungen erscheinen
- Set-ExecutionPolicy Undefined -force
- Es gibt hier keine definierte Ausführungs-Policy, der Status gleicht dem von Restricted