Theo mặc định, PowerShell hạn chế chạy các tập lệnh trên PC của người dùng cuối. Cài đặt này tốt từ quan điểm bảo mật. Tuy nhiên, nếu bạn đang sử dụng nhiều tập lệnh mà bạn đã tải xuống hoặc tự viết mã, nó có thể thực sự khó chịu. Trong bài viết này, chúng tôi sẽ xem xét cách thay đổi chính sách thực thi mặc định cho tập lệnh PowerShell trong Windows 10.
Quảng cáo
Windows PowerShell có bốn chính sách thực thi khác nhau:
- Hạn chế - Không thể chạy tập lệnh. Windows PowerShell chỉ có thể được sử dụng trong chế độ tương tác.
- AllSigned - Chỉ có thể chạy các tập lệnh do nhà xuất bản đáng tin cậy ký.
- RemoteSigned - Các tập lệnh đã tải xuống phải được ký bởi một nhà xuất bản đáng tin cậy trước khi có thể chạy chúng.
- Không hạn chế - Không hạn chế; có thể chạy tất cả các tập lệnh Windows PowerShell.
- Không xác định - Không có chính sách thực thi nào được đặt.
Nếu chính sách thực thi không được đặt và không được định cấu hình, chính sách đó sẽ được hiển thị là 'Không xác định'. Đây là cách bạn có thể xem giá trị hiện tại.
Cách xem Chính sách thực thi PowerShell
- Mở PowerShell .
- Nhập hoặc sao chép-dán lệnh sau và nhấn phím Enter:
Get-ExecutionPolicy -List
Lệnh sẽ hiển thị tất cả các chính sách thực thi. Như bạn có thể thấy, có một số phạm vi mà chính sách thực thi có thể được xác định. Nó có thể được đặt chung cho tất cả người dùng, chỉ cho người dùng hiện tại hoặc cho quá trình hiện tại. Chính sách quy trình hiện tại có mức ưu tiên trên cài đặt của người dùng hiện tại. Chính sách người dùng hiện tại ghi đè tùy chọn chung. Giữ nó trong tâm trí. Bây giờ, hãy xem cách thay đổi chính sách thực thi tập lệnh cho PowerShell.
Thay đổi chính sách Thực thi PowerShell cho một quy trình
- Mở một dấu nhắc lệnh hoặc PowerShell.
- Khởi chạy tệp powershell.exe với đối số -ExecutionPolicy Không hạn chế. Ví dụ,
Powershell.exe -ExecutionPolicy Unrestricted -Tập tin c: data test.ps1
Thao tác này sẽ bắt đầu tập lệnh của bạn bằng cách sử dụng Chính sách thực thi không hạn chế. Thay vì tập lệnh, bạn có thể bắt đầu một lệnh ghép ngắn hoặc những gì bạn muốn. Thay vì 'Không hạn chế', bạn có thể sử dụng bất kỳ chính sách nào khác được đề cập ở trên.
Mẹo: Đối với bảng điều khiển PowerShell đang mở, bạn có thể chuyển đổi chính sách thực thi bằng lệnh:
Set-ExecutionPolicy Unrestricted -Scope Process
Nó sẽ vẫn hoạt động cho đến khi bạn đóng cửa sổ PowerShell hiện tại.
Thay đổi chính sách Thực thi PowerShell cho người dùng hiện tại
- Mở PowerShell.
- Nhập hoặc sao chép-dán lệnh sau và nhấn phím Enter:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Mẹo: Nếu chính sách không được đặt sau lệnh trên, hãy thử kết hợp chính sách đó với đối số -Force, như sau:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
Khi chính sách thực thi được đặt cho người dùng hiện tại, nó sẽ ghi đè phạm vi 'LocalMachine'. Một lần nữa, đối với một quá trình, bạn có thể ghi đè nó cho phiên bản PowerShell hiện tại như được mô tả ở trên.
Thay đổi chính sách Thực thi PowerShell toàn cầu
Chính sách thực thi này áp dụng cho máy tính, có nghĩa là nó có hiệu lực đối với những tài khoản người dùng không áp dụng chính sách thực thi riêng lẻ. Với cài đặt mặc định, nó sẽ được áp dụng cho tất cả các tài khoản người dùng.
Để thay đổi chính sách Thực thi PowerShell trong Windows 10 , hãy làm như sau.
- Mở PowerShell với tư cách quản trị viên .
- Thực hiện lệnh sau:
Set-ExecutionPolicy Unrestricted -Scope LocalMachine
Bạn xong việc rồi.
Thay đổi chính sách Thực thi PowerShell bằng một chỉnh sửa Registry
Có thể thay đổi chính sách thực thi bằng một tinh chỉnh Registry cho cả người dùng hiện tại và máy tính. Đây là cách nó có thể được thực hiện.
- Mở Trình chỉnh sửa sổ đăng ký .
- Để thay đổi chính sách thực thi cho người dùng hiện tại, hãy truy cập
HKEY_CURRENT_USER SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Đặt giá trị chuỗi ExecutionPolicy thành một trong các giá trị sau: Bị hạn chế, Đã ký tất cả, Đã ký từ xa, Không hạn chế, Không xác định.
- Để thay đổi chính sách thực thi cho phạm vi LocalMachine, hãy chuyển đến
HKEY_LOCAL_MACHINE SOFTWARE Microsoft PowerShell 1 ShellIds Microsoft.PowerShell
- Đặt giá trị chuỗi ExecutionPolicy thành một trong các giá trị sau: Bị hạn chế, Đã ký tất cả, Đã ký từ xa, Không hạn chế, Không xác định.
Mẹo: Xem cách truy cập khóa đăng ký với một cú nhấp chuột . Bạn cũng có thể chuyển đổi giữa HKCU và HKLM trong Registry Editor của Windows 10 một cách nhanh chóng .
menu bắt đầu trong windows 10 sẽ không mở
Đó là nó.