programing

윈도우즈 7의 PowerShell: 일반 사용자를 위한 실행 정책 설정

madecode 2023. 7. 30. 22:42
반응형

윈도우즈 7의 PowerShell: 일반 사용자를 위한 실행 정책 설정

윈도우즈 7에서 PowerShell 스크립트를 일반 사용자로 실행하려고 합니다.시도할 때마다 다음 오류가 발생합니다.

File C:\Users\danv\Documents\WindowsPowerShell\profile.ps1 cannot be loaded because the
execution of scripts is disabled on this system. Please see "get-help about_signing" for
more details.
At line:1 char:2
+ . <<<<  'C:\Users\danv\Documents\WindowsPowerShell\profile.ps1'
    + CategoryInfo          : NotSpecified: (:) [], PSSecurityException
    + FullyQualifiedErrorId : RuntimeException

다음을 통해 해결 시도 중Set-ExecutionPolicy Unrestricted실패:

PS C:\Users\danv> Set-ExecutionPolicy Unrestricted
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 <<<<  Unrestricted
    + CategoryInfo          : NotSpecified: (:) [Set-ExecutionPolicy], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetExecutionPolicyCommand

실행할 수 있습니다.Set-ExecutionPolicy Unrestricted관리자 권한으로 명령하지만 관리자가 아닌 사용자에게는 이 명령이 전파되지 않는 것 같습니다.

비관리자로서 스크립트를 성공적으로 실행하려면 어떻게 해야 합니까?

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

로컬 시스템(HKEY_LOCAL_MACHINE)이 아닌 현재 사용자(HKEY_CURRENT_USER에 저장)에 대한 실행 정책을 설정합니다.컴퓨터에 대한 관리 제어 권한이 없는 경우 유용합니다.

RemoteSigned보다 안전한 실행 정책입니다.Unrestricted스크립트를 다운로드하는 경우RemoteSigned실행을 방해한 다음 스크립트를 확인한 후 파일 속성을 열고 "차단 해제" 플래그를 지정하여 제한을 제거합니다.실행 불가능한 경우 다음과 같이 정책을 설정할 수 있습니다.Unrestricted대신.

사용자(또는 유용한 관리자)가 실행되는 경우Set-ExecutionPolicy관리자로서 정책은 모든 사용자에 대해 설정됩니다. (안전 조치로 "제한 없음"이 아닌 "원격 서명"을 제안합니다.)

NB.: 64비트 OS에서 실행해야 합니다.Set-ExecutionPolicy32비트 및 64비트 PowerShell용으로 별도로 제공됩니다.

이렇게 하면 문제가 해결될 것입니다. 다음을 실행해 보십시오.

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser 
Select ***Start > All Programs > Windows PowerShell version > Windows PowerShell***.
Type ```Set-ExecutionPolicy RemoteSigned``` to set the policy to ```RemoteSigned```.
Type ```Set-ExecutionPolicy Unrestricted``` to set the policy to ```Unrestricted```.
Type ```Get-ExecutionPolicy``` to verify the current settings for the execution policy.
Type ```Exit```.

PC의 관리자인 경우 다음 명령을 입력할 수 있습니다.

 Set-ExecutionPolicy Unrestricted

파워셸 창관리자로서 셸을 실행해야 할 수도 있습니다.

그러면 확인 메시지가 나타납니다. 모든 글로벌 사용자에 대해 제한되지 않은 설정을 설정하려면 'A'를 입력하십시오. 현재 사용자(관리자)에 대해서만 제한되지 않은 설정을 설정하려면 'Y'를 입력하십시오.

다음 명령을 사용하여 변경한 내용을 언제든지 되돌릴 수 있습니다.

Set-ExecutionPolicy Restricted

언급URL : https://stackoverflow.com/questions/4647429/powershell-on-windows-7-set-executionpolicy-for-regular-users

반응형