Schritt-für-Schritt-Anleitung zum Ändern der Ausführungsrichtlinie für die Ausführung von PowerShell-Skripts

Schritt-für-Schritt-Anleitung zum Ändern der Ausführungsrichtlinie für die Ausführung von PowerShell-Skripts
  • Um die PowerShell-Ausführungsrichtlinie zu ändern, starten Sie PowerShell (Administrator) und führen Sie den Befehl „Set-ExecutionPolicy RemoteSigned“ aus , um die Skriptausführung zu aktivieren. Alternativ lässt der Befehl „Set-ExecutionPolicy AllSigned“ nur Skripte von verifizierten Herausgebern zu. Der Befehl „Set-ExecutionPolicy Unrestricted“ hingegen erlaubt die freie Ausführung aller Skripte.
  • Wenn Sie zu den Standardeinstellungen zurückkehren möchten, verwenden Sie den Befehl „Set-ExecutionPolicy Restricted“, um die Skriptausführung vollständig zu untersagen.
  • Sie können die PowerShell-Skriptberechtigungen auch über die Einstellungsanwendung von Windows 10 oder 11 anpassen.

Unter Windows 10 oder 11 kann der Versuch, ein Skript in PowerShell auszuführen, standardmäßig zu einer Fehlermeldung führen, die besagt: „Kann nicht geladen werden, da die Ausführung von Skripts auf diesem System deaktiviert ist .“ Dieser Fehler tritt aufgrund einer Ausführungsrichtlinie auf, die aus Sicherheitsgründen vorhanden ist und steuert, wie Skripts und Konfigurationsdateien ausgeführt werden, um böswillige Aktivitäten auf Ihrem System zu verhindern.

Um ein Skript auf diesen Betriebssystemen auszuführen, haben Sie die Möglichkeit, die Ausführungsrichtlinie für den lokalen Computer, den aktuellen Benutzer oder die Sitzung selbst zu ändern.

Wenn Sie eine Ausführungsrichtlinie für den aktuellen Benutzer oder den lokalen Computer festlegen, werden diese Informationen in der Windows-Registrierung gespeichert. Wenn Sie die Richtlinie jedoch nur für eine Sitzung festlegen, bleibt diese Änderung nur bestehen, bis Sie PowerShell schließen.

Laut Microsoft stellen diese Ausführungsrichtlinien keine Einschränkungen für Aktivitäten dar. Sie können sie vorübergehend umgehen, indem Sie das Skript direkt in die Befehlszeile eingeben. Die Absicht hinter diesen Richtlinien besteht darin, Benutzern dabei zu helfen, die Ausführung schädlicher Skripte zu vermeiden.

Dieses Handbuch enthält detaillierte Anweisungen zum Ändern Ihrer Ausführungsrichtlinie, um eine erfolgreiche Skriptausführung in PowerShell unter Windows 10 oder 11 zu ermöglichen.

Ausführungsrichtlinie unter Windows 11 über PowerShell ändern

Um die PowerShell-Ausführungsrichtlinie unter Windows 10 oder 11 zu ändern, führen Sie die folgenden Schritte aus:

  1. Klicken Sie auf Ihrem Windows 11-Gerät auf „Start“ .

  2. Suchen Sie nach PowerShell , klicken Sie mit der rechten Maustaste auf das oberste Ergebnis und wählen Sie Als Administrator ausführen .

  3. Geben Sie den folgenden Befehl ein, um die aktuelle Ausführungsrichtlinie zu überprüfen, und drücken Sie die Eingabetaste :

    Get-ExecutionPolicy

  4. (Optional) Um die effektiven PowerShell-Ausführungsrichtlinien aufzulisten, geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste :

    Get-ExecutionPolicy -List

  5. Um die Ausführung von Skripts auf Ihrem Windows 11-Computer zuzulassen, geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste :

    Set-ExecutionPolicy RemoteSigned

  6. (Optional) Um die Ausführung von Skripts zu verhindern, können Sie diesen Befehl eingeben und die Eingabetaste drücken :

    Set-ExecutionPolicy Restricted
    PowerShell-Ausführungsrichtlinie ändern

Nach Abschluss der Schritte sollten Sie Ihr Skript erfolgreich unter Windows 11 ausführen können. Wenn Sie die Berechtigungen zur Skriptausführung zu irgendeinem Zeitpunkt wiederherstellen möchten, können Sie den oben beschriebenen optionalen Befehl ausführen.

Wenn Sie die Ausführungsrichtlinie so festlegen müssen, dass die Skriptausführung nur für den aktuellen Benutzer oder das lokale Gerät zulässig ist, können Sie mit Ihrem Befehl die Option „Scope“ wie folgt verwenden: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUseroder Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine.

Unter Windows 11 stehen Ihnen vier Ausführungsrichtlinien zur Verfügung, um zu steuern, welche Skripts ausgeführt werden können:

  • Eingeschränkt – verhindert die Ausführung aller Skripts.
  • RemoteSigned – ermöglicht lokal erstellte Skripte, erfordert jedoch, dass Skripte von anderen Computern von einem vertrauenswürdigen Herausgeber signiert werden.
  • AllSigned – erlaubt alle Skripte, sofern sie von einer vertrauenswürdigen Quelle signiert sind.
  • Uneingeschränkt – ermöglicht die Ausführung aller Skripts ohne Einschränkungen.

Wenn Ihr Skript die spezifischen Parameter nicht benötigt und keine Ausgabe liefert, ist eine Änderung der Ausführungsrichtlinie möglicherweise nicht erforderlich. Stattdessen können Sie den Befehl verwenden, PowerShell.exe -File "FILENAME"-ExecutionPolicy Bypassum Einschränkungen zu umgehen.

Ausführungsrichtlinie unter Windows 11 über die Einstellungen ändern

Unter Windows 10 und 11 können Sie die Berechtigungen für PowerShell-Skripts auch über die App „Einstellungen“ ändern.

Für Windows 11

Um die Ausführungsrichtlinie mithilfe der Anwendung „Einstellungen“ zu aktualisieren, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Einstellungen .

  2. Wählen Sie System .

  3. Gehen Sie zum Abschnitt „Für Entwickler“ .

  4. Klicken Sie auf die PowerShell- Option.

  5. Aktivieren Sie den Schalter für „Ausführungsrichtlinie ändern, um lokale PowerShell-Skripte zuzulassen […]“ .

    Windows 11-Einstellungen ändern die PowerShell-Ausführung

Wenn Sie diese Option nicht mehr aktivieren möchten, führen Sie einfach dieselben Schritte aus und deaktivieren Sie in Schritt 5 den Kippschalter.

Für Windows 10

Um die PowerShell-Ausführungsrichtlinie über die App „Einstellungen“ zu aktualisieren, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie die Einstellungen .

  2. Wählen Sie Update und Sicherheit .

  3. Navigieren Sie zum Abschnitt „Für Entwickler“ .

  4. Aktivieren Sie in den PowerShell-Einstellungen die Option „Ausführungsrichtlinie ändern, um lokale PowerShell-Skripte zuzulassen […]“ .

    Windows 10-Einstellungen ändern die PowerShell-Ausführung

  5. Klicken Sie auf die Schaltfläche „Übernehmen“, um die Änderungen zu speichern.

Wenn Sie diese Funktion deaktivieren möchten, wiederholen Sie dieselben Schritte, aber deaktivieren Sie in Schritt 4 die Option und wenden Sie Ihre Änderungen an.

Nach Abschluss der Schritte wird die PowerShell-Ausführungsrichtlinie auf „RemoteSigned“ gesetzt. Dadurch können Sie lokale Skripts ausführen, ohne dass eine Signatur erforderlich ist, während für Remote-Skripts eine Überprüfung erforderlich ist.

Ändern Sie die Ausführungsrichtlinie, um nicht signierte Skripts auszuführen

Wenn Sie auf ein PowerShell-Skript stoßen, das von einem anderen Computer stammt oder online heruntergeladen wurde, kann beim Versuch, es auszuführen, ein Fehler wie „Datei […].ps1 kann nicht geladen werden. Die Datei […].ps1 ist nicht digital signiert. Sie können dieses Skript auf dem aktuellen System nicht ausführen“ oder „Das Skript wird auf dem System nicht ausgeführt“ auftreten . Wenn Sie jedoch von der Sicherheit des Skripts überzeugt sind und die Quelle vertrauenswürdig ist, können Sie die Gültigkeitsbereichsrichtlinie „Prozess“ anpassen, um seine Ausführung zu autorisieren.

Fehler „PowerShell-Skript nicht digital signiert“
Fehler „PowerShell-Skript nicht digital signiert“ / Bild: Mauro Huculak

Um die PowerShell-Ausführungsrichtlinie so zu ändern, dass die Ausführung eines nicht digital signierten „.ps1“-Skripts zugelassen wird, führen Sie die folgenden Schritte aus:

  1. Öffnen Sie „Start“ .

  2. Suchen Sie nach PowerShell , klicken Sie mit der rechten Maustaste auf das oberste Ergebnis und wählen Sie „Als Administrator ausführen“ .

  3. Um die Richtlinie zu ändern und nicht signierte PowerShell-Skripts zuzulassen, geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste :

    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
    PowerShell lässt Skripts zu, die nicht digital signiert sind

Führen Sie nach der Ausführung dieser Schritte die Skriptdatei mit dem Befehl .\Your-PowerShell-Script.ps1während Ihrer aktuellen Sitzung aus. Beachten Sie, dass die Ausführungsrichtlinie nach dem Schließen der PowerShell-Sitzung auf den vorherigen Zustand zurückgesetzt wird, sodass ohne weitere Anpassungen keine anderen Skripts mehr ausgeführt werden können.

Wenn Sie ein anderes Skript ausführen müssen, können Sie die beschriebenen Schritte wiederholen.

Update 10. Oktober 2024: Dieser Leitfaden wurde überarbeitet, um seine Richtigkeit zu gewährleisten und die jüngsten Anpassungen im Prozess zu berücksichtigen.

Quelle

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert