- Για να αλλάξετε την πολιτική εκτέλεσης του PowerShell, ανοίξτε το PowerShell (admin) και εκτελέστε την εντολή "Set-ExecutionPolicy RemoteSigned" για να ορίσετε την εκτέλεση ώστε να επιτρέπει τα σενάρια. Η εντολή "Set-ExecutionPolicy AllSigned" επιτρέπει τα σενάρια από αξιόπιστους εκδότες. Ή η εντολή "Set-ExecutionPolicy Unrestricted" επιτρέπει τα σενάρια χωρίς περιορισμούς.
- Μπορείτε επίσης να εκτελέσετε την εντολή "Set-ExecutionPolicy Restricted" για να αναιρέσετε τις αλλαγές και να αποτρέψετε την εκτέλεση σεναρίων.
- Τέλος, μπορείτε να επιτρέψετε τα σενάρια PowerShell αλλάζοντας την πολιτική από την εφαρμογή Ρυθμίσεις των Windows 11 και 10.
Στα Windows 11 (ή 10), από προεπιλογή, όταν προσπαθείτε να εκτελέσετε ένα σενάριο στο PowerShell, θα αποτύχει με το μήνυμα σφάλματος "δεν είναι δυνατή η φόρτωση επειδή η εκτέλεση σεναρίων είναι απενεργοποιημένη σε αυτό το σύστημα" . Αυτό συμβαίνει επειδή το PowerShell διαθέτει μια λειτουργία ασφαλείας "πολιτική εκτέλεσης" που ελέγχει τον τρόπο φόρτωσης αρχείων ρύθμισης παραμέτρων και εκτέλεσης σεναρίων για την αποτροπή της εκτέλεσης κακόβουλου κώδικα στο σύστημα.
Εάν πρέπει να εκτελέσετε μια δέσμη ενεργειών στα Windows 11 (ή 10), μπορείτε να αλλάξετε την πολιτική εκτέλεσης για τον τοπικό υπολογιστή, τον τρέχοντα χρήστη ή την περίοδο λειτουργίας.
Όταν ορίζετε μια πολιτική εκτέλεσης PowerShell για τον τοπικό υπολογιστή και τον τρέχοντα χρήστη, οι πληροφορίες αποθηκεύονται στο Μητρώο. Εάν ρυθμίσετε την πολιτική για μια συγκεκριμένη περίοδο λειτουργίας, αυτή διατηρείται στη μνήμη και στη συνέχεια χάνεται όταν κλείσετε την περίοδο λειτουργίας.
Σύμφωνα με τη Microsoft , η πολιτική εκτέλεσης δεν περιορίζει τις ενέργειες. Μπορείτε να παρακάμψετε την πολιτική πληκτρολογώντας το σενάριο στη διεπαφή γραμμής εντολών (CLI). Η πολιτική έχει σχεδιαστεί για να βοηθά τους χρήστες να αποτρέπουν την εκτέλεση κακόβουλων σεναρίων.
Σε αυτόν τον οδηγό , θα σας διδάξω πώς να αλλάξετε την πολιτική εκτέλεσης για να εκτελείτε με επιτυχία τα σενάρια στο PowerShell στα Windows 11 ή 10.
Αλλαγή πολιτικής εκτέλεσης στα Windows 11 από το PowerShell
Για να αλλάξετε την πολιτική εκτέλεσης PowerShell στα Windows 11 (ή 10), ακολουθήστε τα εξής βήματα:
-
Ανοίξτε την Έναρξη στα Windows 11.
-
Αναζητήστε το PowerShell , κάντε δεξί κλικ στο επάνω αποτέλεσμα και επιλέξτε την επιλογή Εκτέλεση ως διαχειριστής .
-
Πληκτρολογήστε την ακόλουθη εντολή για να επιβεβαιώσετε την τρέχουσα πολιτική εκτέλεσης και πατήστε Enter :
Get-ExecutionPolicy
-
(Προαιρετικά) Πληκτρολογήστε την ακόλουθη εντολή για να δείτε τις ισχύουσες πολιτικές εκτέλεσης PowerShell και πατήστε Enter :
Get-ExecutionPolicy -Λίστα
-
Πληκτρολογήστε την ακόλουθη εντολή για να αλλάξετε την πολιτική εκτέλεσης PowerShell ώστε να επιτρέπεται η εκτέλεση σεναρίων στα Windows 11 και πατήστε Enter :
Απομακρυσμένη υπογραφή Set-ExecutionPolicy
-
(Προαιρετικά) Πληκτρολογήστε την ακόλουθη εντολή για να αλλάξετε την πολιτική εκτέλεσης ώστε να αποτρέπεται η εκτέλεση σεναρίων και πατήστε Enter :
Περιορισμένη πολιτική εκτέλεσης ορισμού

Μόλις ολοκληρώσετε τα βήματα, μπορείτε να εκτελέσετε ξανά το σενάριο και θα πρέπει πλέον να εκτελείται με επιτυχία στα Windows 11. Εάν δεν θέλετε πλέον να επιτρέπετε την εκτέλεση σεναρίων στον υπολογιστή σας, μπορείτε να εκτελέσετε την προαιρετική εντολή που αναφέρεται στα βήματα.
Εάν θέλετε να αλλάξετε την πολιτική εκτέλεσης ώστε να εκτελεί σενάρια για τον τρέχοντα χρήστη ή τον τοπικό υπολογιστή, πρέπει να χρησιμοποιήσετε την επιλογή "Πεδίο εφαρμογής" ως εξής: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserή Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine.
Στα Windows 11, μπορείτε να επιλέξετε από τέσσερις διαφορετικές πολιτικές εκτέλεσης για να επιτρέψετε ή να απορρίψετε τα σενάρια:
- Περιορισμένο — εμποδίζει την εκτέλεση οποιουδήποτε αρχείου σεναρίου.
- RemoteSigned — επιτρέπει τη δημιουργία σεναρίων στον υπολογιστή. Ωστόσο, τα σενάρια που δημιουργούνται σε άλλη συσκευή δεν θα εκτελούνται χωρίς αξιόπιστη υπογραφή.
- AllSigned — επιτρέπει την εκτέλεση όλων των σεναρίων. Ωστόσο, μόνο εάν ένας αξιόπιστος εκδότης έχει συμπεριλάβει μια υπογραφή.
- Απεριόριστο — εκτελεί οποιοδήποτε σενάριο χωρίς περιορισμούς.
Δεν χρειάζεται να αλλάξετε την πολιτική εκτέλεσης εάν χρειάζεται να εκτελέσετε ένα σενάριο που δεν έχει τις απαιτούμενες παραμέτρους και δεν επιστρέφει έξοδο. Αντίθετα, μπορείτε να χρησιμοποιήσετε την PowerShell.exe -File "FILENAME" -ExecutionPolicy Bypassεντολή για να παρακάμψετε τους περιορισμούς.
Αλλαγή πολιτικής εκτέλεσης στα Windows 11 από τις Ρυθμίσεις
Στα Windows 11 και 10, μπορείτε επίσης να επιτρέψετε την εκτέλεση σεναρίων στο PowerShell αλλάζοντας τη διαμόρφωση της κονσόλας εντολών από την εφαρμογή Ρυθμίσεις.
Από τα Windows 11
Για να αλλάξετε την πολιτική εκτέλεσης PowerShell από την εφαρμογή Ρυθμίσεις, ακολουθήστε τα εξής βήματα:
-
Ανοίξτε τις Ρυθμίσεις .
-
Κάντε κλικ στο Σύστημα .
-
Κάντε κλικ στη σελίδα Για προγραμματιστές .
-
Κάντε κλικ στη ρύθμιση PowerShell .
-
Ενεργοποιήστε τον διακόπτη εναλλαγής «Αλλαγή πολιτικής εκτέλεσης για να επιτρέπονται τα τοπικά σενάρια PowerShell […]» .

Εάν δεν χρειάζεστε πλέον αυτήν τη λειτουργία, μπορείτε να αποκλείσετε τα σενάρια χρησιμοποιώντας τα ίδια βήματα, αλλά στο βήμα 5 , απενεργοποιήστε τον διακόπτη εναλλαγής "Αλλαγή πολιτικής εκτέλεσης για να επιτρέπονται τα τοπικά σενάρια PowerShell […]" .
Από τα Windows 10
Για να αλλάξετε την πολιτική εκτέλεσης PowerShell από την εφαρμογή Ρυθμίσεις, ακολουθήστε τα εξής βήματα:
-
Ανοίξτε τις Ρυθμίσεις .
-
Κάντε κλικ στην επιλογή Ενημέρωση και ασφάλεια .
-
Κάντε κλικ στη σελίδα Για προγραμματιστές .
-
Ελέγξτε την επιλογή "Αλλαγή πολιτικής εκτέλεσης ώστε να επιτρέπονται τα τοπικά σενάρια PowerShell […]" για τη ρύθμιση PowerShell.

-
Κάντε κλικ στο κουμπί Εφαρμογή .
Εάν δεν χρειάζεστε πλέον αυτήν τη λειτουργία, μπορείτε να αποκλείσετε τα σενάρια χρησιμοποιώντας τα ίδια βήματα, αλλά στο βήμα 4 , απενεργοποιήστε την επιλογή "Αλλαγή πολιτικής εκτέλεσης για να επιτρέπονται τα τοπικά σενάρια PowerShell […]" και εφαρμόστε τις αλλαγές.
Αφού ολοκληρώσετε τα βήματα, η ρύθμιση θα ορίσει την πολιτική εκτέλεσης για το PowerShell σε "RemoteSigned". Αυτή η πολιτική θα σας επιτρέψει να εκτελείτε σενάρια χωρίς υπογραφή, αλλά θα απαιτεί υπογραφή για τα απομακρυσμένα σενάρια.
Αλλαγή πολιτικής εκτέλεσης για να επιτρέπεται το σενάριο που δεν έχει υπογραφεί ψηφιακά
Εάν έχετε ένα σενάριο PowerShell που δημιουργήθηκε σε άλλον υπολογιστή ή λήφθηκε από το διαδίκτυο, εάν προσπαθήσετε να εκτελέσετε το σενάριο, ενδέχεται να εμφανιστεί το μήνυμα σφάλματος "Δεν είναι δυνατή η φόρτωση του αρχείου […].ps1. Το αρχείο […].ps1 δεν έχει ψηφιακή υπογραφή. Δεν μπορείτε να εκτελέσετε αυτό το σενάριο στο τρέχον σύστημα" ή το μήνυμα σφάλματος "Το σενάριο δεν θα εκτελεστεί στο σύστημα" . Ωστόσο, εφόσον γνωρίζετε ότι το σενάριο είναι ασφαλές για χρήση και το έχετε λάβει από αξιόπιστη πηγή, μπορείτε να αλλάξετε την πολιτική εύρους "Διαδικασία" για να το εκτελέσετε με επιτυχία.

Σφάλμα μη ψηφιακής υπογραφής σεναρίου PowerShell / Εικόνα: Mauro Huculak
Για να αλλάξετε την πολιτική εκτέλεσης PowerShell ώστε να εκτελείται μια δέσμη ενεργειών ".ps1" που δεν έχει ψηφιακή υπογραφή, ακολουθήστε τα εξής βήματα:
-
Άνοιγμα Έναρξης .
-
Αναζητήστε το PowerShell , κάντε δεξί κλικ στο επάνω αποτέλεσμα και επιλέξτε την επιλογή Εκτέλεση ως διαχειριστής .
-
Πληκτρολογήστε την ακόλουθη εντολή για να αλλάξετε ώστε να επιτρέπονται τα σενάρια PowerShell με ψηφιακή υπογραφή και πατήστε Enter :
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Παράκαμψη

Μόλις ολοκληρώσετε τα βήματα, μπορείτε να εκτελέσετε το αρχείο σεναρίου χρησιμοποιώντας την .\Your-PowerShell-Script.ps1εντολή κατά την τρέχουσα περίοδο λειτουργίας. Μετά το κλείσιμο της περιόδου λειτουργίας PowerShell, η πολιτική εκτέλεσης θα επανέλθει στην αρχική της κατάσταση για να αποτρέψει την εκτέλεση άλλων σεναρίων.
Εάν πρέπει να εκτελέσετε ένα άλλο αρχείο script, μπορείτε να επαναλάβετε τα βήματα που περιγράφονται παραπάνω.
Ενημέρωση 10 Οκτωβρίου 2024: Αυτός ο οδηγός έχει ενημερωθεί για να διασφαλιστεί η ακρίβεια και να αντικατοπτρίζει τις αλλαγές στη διαδικασία.