Polityka wykonawcza (Execution Policy) w PowerShell – co to jest i jak ją zmienić?
PowerShell to potężne narzędzie do automatyzacji i zarządzania systemem Windows. Jednak domyślne ustawienia bezpieczeństwa mogą uniemożliwić uruchamianie skryptów. W tym wpisie wyjaśniam, czym jest polityka wykonawcza (Execution Policy), jak ją sprawdzić i zmienić, aby móc swobodnie korzystać z PowerShell.
Czym jest polityka wykonawcza (Execution Policy)?
Polityka wykonawcza to mechanizm bezpieczeństwa w PowerShell, który kontroluje, jakie skrypty mogą być uruchamiane na systemie. Ma ona na celu zapobieganie przypadkowemu lub złośliwemu uruchomieniu niebezpiecznych skryptów.
Dostępne polityki wykonawcze
PowerShell oferuje kilka poziomów polityki wykonawczej:
- Restricted – domyślna polityka. Blokuje wszystkie skrypty PowerShell. Można uruchamiać tylko polecenia wprowadzane bezpośrednio w konsoli.
- AllSigned – pozwala na uruchamianie tylko skryptów podpisanych cyfrowo przez zaufanego wydawcę.
- RemoteSigned – pozwala na uruchamianie lokalnych skryptów oraz skryptów zdalnych, pod warunkiem, że te ostatnie są podpisane przez zaufanego wydawcę.
- Unrestricted – pozwala na uruchamianie wszystkich skryptów, ale wyświetla ostrzeżenie przed skryptami pobranymi z internetu.
- Bypass – pomija wszystkie ograniczenia. Nie zalecane ze względów bezpieczeństwa.
Jak sprawdzić aktualną politykę wykonawczą?
Aby sprawdzić aktualną politykę wykonawczą, uruchom PowerShell i wpisz następujące polecenie:
Get-ExecutionPolicy
Polecenie zwróci jedną z powyższych wartości (np. Restricted, RemoteSigned).
Jak zmienić politykę wykonawczą?
Aby zmienić politykę wykonawczą, wykonaj następujące kroki:
- Otwórz PowerShell jako administrator:
- Kliknij prawym przyciskiem myszy na ikonę PowerShell i wybierz Run as Administrator.
- Zmień politykę wykonawczą:
Użyj polecenia
Set-ExecutionPolicy, aby zmienić politykę. Na przykład:Set-ExecutionPolicy RemoteSigned -Scope CurrentUserTa komenda ustawia politykę
RemoteSigneddla bieżącego użytkownika. - Potwierdź zmianę:
PowerShell poprosi Cię o potwierdzenie. Wpisz
Yi naciśnij Enter.
Zmiana polityki tylko dla bieżącej sesji
Jeśli chcesz zmienić politykę wykonawczą tylko na czas trwania bieżącej sesji PowerShell (bez trwałej zmiany), użyj flagi -Scope Process:
Set-ExecutionPolicy RemoteSigned -Scope Process -Force
Ta zmiana będzie obowiązywać tylko do zamknięcia okna PowerShell.
Przykłady użycia
- Ustawienie polityki
RemoteSigned:Set-ExecutionPolicy RemoteSigned -Scope CurrentUser - Przywracanie domyślnej polityki
Restricted:Set-ExecutionPolicy Restricted -Scope CurrentUser
Podsumowanie
Polityka wykonawcza w PowerShell to ważny mechanizm bezpieczeństwa, który kontroluje, jakie skrypty mogą być uruchamiane. Domyślne ustawienie (Restricted) może być frustrujące, ale można je łatwo zmienić za pomocą polecenia Set-ExecutionPolicy. Pamiętaj, aby wybierać polityki odpowiednie do Twoich potrzeb, zachowując jednocześnie bezpieczeństwo systemu.
Jeśli masz dodatkowe pytania lub potrzebujesz pomocy, zostaw komentarz poniżej!
Komentarze
Prześlij komentarz