วิธีตั้งค่า ExecutionPolicy: ปฏิเสธการเข้าถึงรีจิสตรีคีย์


22

ฉันใช้ Windows Server 2008 เป็นผู้ดูแลระบบและฉันพยายามตั้ง ExecutionPolicy เป็น Remotesigned สำหรับ PowerShell v2 เช่นนี้:

Set-ExecutionPolicy RemoteSigned

แต่ฉันได้รับข้อผิดพลาดนี้:

Set-ExecutionPolicy : Access to the registry key 'HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft
.PowerShell' is denied.
At line:1 char:20
+ Set-ExecutionPolicy <<<<  RemoteSigned
    + CategoryInfo          : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyComma
   nd

จะแก้ไขได้อย่างไร?

คำตอบ:


24

คลิกขวาที่ทางลัด Powershell และเลือก 'เรียกใช้ในฐานะผู้ดูแลระบบ'


5
โปรดทราบด้วยว่าหากคุณมีระบบปฏิบัติการ 64 บิตคุณจะต้องตั้งค่านโยบายการดำเนินการสำหรับ PowerShell รุ่น 32 บิตและ 64 บิต
Joey

คุณไม่จำเป็นต้องเรียกใช้ในฐานะผู้ดูแลระบบเพียงแค่รันด้วย-Scope CurrentUserคำตอบที่แนะนำจาก Janus
CharlesB

12

Stephen Jennings ตอบคำถามเดียวกันบน StackOverflow:

Set-ExecutionPolicy Unrestricted -Scope CurrentUser

สิ่งนี้จะตั้งค่านโยบายการดำเนินการสำหรับผู้ใช้ปัจจุบัน (เก็บไว้ใน HKEY_CURRENT_USER) มากกว่าเครื่องโลคัล (HKEY_LOCAL_MACHINE)


3
ขอบคุณ นี่คือคำตอบที่ถูกต้องไม่ใช่ทุกคนมีสิทธิ์ผู้ดูแลระบบ แต่ก็ยังใช้งานได้
Charles Clayton

4

ในกรณีที่ "Run as Administrator" ไม่ทำงานสำหรับคุณ (ไม่ได้สำหรับฉันในตอนแรก) หรือหากคุณต้องการวิธีแก้ปัญหาแบบถาวรฉันพบวิธีแก้ไขโดยการเพิ่มการอนุญาตโดยตรงไปยัง windows registry หลังจากทำสิ่งนี้เมื่อฉันเรียกว่า get-ExecutionPolicy มันจะไม่ถูก จำกัด อีกต่อไป

มันเทียบเท่ากับการตั้งค่า ExecutionPolicy RemoteSigned กับมันใช้งานได้จริง

เขียนเกี่ยวกับที่นี่: http://kyleclegg.com/powershell/

หวังว่านี่จะช่วยได้


0

ฉันพบว่าทางออกเดียวสำหรับข้อผิดพลาดที่ใช้งานได้สำหรับฉันคือการเรียกใช้ regedt32 & เจาะลึกไปที่คีย์จากนั้นเปลี่ยนการอนุญาตสำหรับผู้ใช้จากการอ่านเป็นการควบคุมแบบเต็ม การอนุญาตเฉพาะที่บนเซิร์ฟเวอร์นำหน้าสิทธิ์ผู้ดูแลโดเมน


ไม่ได้จริงๆคำตอบที่ดีให้อีกสองคำตอบอยู่แล้ว ...
HopelessN00b
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.