Domyślnie PowerShell ogranicza uruchamianie skryptów na komputerach użytkowników końcowych. To ustawienie jest dobre z punktu widzenia bezpieczeństwa. Jeśli jednak używasz wielu skryptów, które sam pobrałeś lub zakodowałeś, może to być naprawdę denerwujące. W tym artykule przyjrzymy się, jak zmienić domyślne zasady wykonywania skryptów PowerShell w systemie Windows 10.
Reklama
Windows PowerShell ma cztery różne zasady wykonywania:
- Ograniczone - nie można uruchamiać żadnych skryptów. Windows PowerShell może być używany tylko w trybie interaktywnym.
- AllSigned - można uruchamiać tylko skrypty podpisane przez zaufanego wydawcę.
- RemoteSigned - pobrane skrypty muszą zostać podpisane przez zaufanego wydawcę, zanim będzie można je uruchomić.
- Bez ograniczeń - bez ograniczeń; można uruchomić wszystkie skrypty programu Windows PowerShell.
- Niezdefiniowane - nie ustawiono żadnych zasad wykonywania.
Jeśli zasada wykonywania nie jest ustawiona i nie jest skonfigurowana, jest wyświetlana jako „Niezdefiniowana”. Oto jak możesz zobaczyć aktualną wartość.
Jak wyświetlić zasady wykonywania programu PowerShell
- Otwórz PowerShell .
- Wpisz lub skopiuj i wklej następujące polecenie i naciśnij klawisz Enter:
Get-ExecutionPolicy -List
Polecenie wyświetli wszystkie zasady wykonywania. Jak widać, istnieje wiele zakresów, dla których można zdefiniować zasady wykonywania. Można go ustawić globalnie dla wszystkich użytkowników, tylko dla bieżącego użytkownika lub dla bieżącego procesu. Bieżąca polityka procesu ma wyższy priorytet niż ustawienia bieżącego użytkownika. Bieżące zasady dotyczące użytkowników zastępują opcję globalną. Pamiętaj o tym. Zobaczmy teraz, jak zmienić zasady wykonywania skryptów dla programu PowerShell.
Zmień zasady wykonywania programu PowerShell dla procesu
- Otwórz wiersz polecenia lub PowerShell.
- Uruchom plik powershell.exe z argumentem -ExecutionPolicy Unrestricted. Na przykład,
Powershell.exe -ExecutionPolicy Unrestricted -File c: data test.ps1
Spowoduje to uruchomienie skryptu przy użyciu zasad nieograniczonego wykonywania. Zamiast skryptu możesz uruchomić polecenie cmdlet lub to, co chcesz. Zamiast „Nieograniczony” możesz zastosować dowolną inną zasadę wymienioną powyżej.
Porada: W przypadku otwartej konsoli PowerShell można przełączyć zasady wykonywania za pomocą polecenia:
Set-ExecutionPolicy Unrestricted -Scope Process
Pozostanie aktywne, dopóki nie zamkniesz bieżącego okna PowerShell.
Zmień zasady wykonywania programu PowerShell dla bieżącego użytkownika
- Otwórz PowerShell.
- Wpisz lub skopiuj i wklej następujące polecenie i naciśnij klawisz Enter:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Wskazówka: jeśli zasada nie została ustawiona po powyższym poleceniu, spróbuj połączyć ją z argumentem -Force, na przykład:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
Gdy zasada wykonywania jest ustawiona dla bieżącego użytkownika, zastąpi ona zakres „LocalMachine”. Ponownie w przypadku procesu można go zastąpić dla bieżącego wystąpienia programu PowerShell, jak opisano powyżej.
Zmień globalne zasady wykonywania programu PowerShell
Ta zasada wykonywania ma zastosowanie do komputera, co oznacza, że jest skuteczna dla tych kont użytkowników, dla których żadna zasada wykonywania nie jest stosowana indywidualnie. Przy ustawieniach domyślnych zostanie zastosowany do wszystkich kont użytkowników.
Aby zmienić zasady wykonywania programu PowerShell w systemie Windows 10 wykonaj następujące czynności.
- Otwórz PowerShell jako administrator .
- Wykonaj następujące polecenie:
Set-ExecutionPolicy Unrestricted -Scope LocalMachine
Skończyłeś.
Zmień zasady wykonywania programu PowerShell za pomocą poprawki w rejestrze
Możliwa jest zmiana zasad wykonywania za pomocą poprawki rejestru zarówno dla bieżącego użytkownika, jak i komputera. Oto, jak można to zrobić.
- Otworzyć Edytor rejestru .
- Aby zmienić zasady wykonywania dla bieżącego użytkownika, przejdź do
HKEY_CURRENT_USER SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Ustaw wartość ciągu ExecutionPolicy na jedną z następujących wartości: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
- Aby zmienić zasady wykonywania dla zakresu LocalMachine, przejdź do
HKEY_LOCAL_MACHINE SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Ustaw wartość ciągu ExecutionPolicy na jedną z następujących wartości: Restricted, AllSigned, RemoteSigned, Unrestricted, Undefined.
Wskazówka: zobacz, jak przejść do klucza rejestru jednym kliknięciem . Ty też możesz szybko przełączaj się między HKCU i HKLM w Edytorze rejestru systemu Windows 10 .
jak stworzyć nieodwrócony serwer
Otóż to.