vscode
에서 명령어를 실행하려고 하는데 cmd
의 경우에는 문제가 없다가 Powershell
의 경우에 이런 오류가 뜰 때가 있다.
Powershell
의 기본 보안 정책이 Restricted
로 설정되어 있기 때문이다.
AllSigned
서명 된 스크립트만 실행 가능
Bypass
영어 뜻 그대로 어떤 것도 차단되지 않고 경고 없이 패스되어 실행 됨 (보안의 위험)
Default
Restricted Windows 클라이언트의 경우 Windows 서버용 RemoteSigned
-> 라는데 밑에 거랑 비슷한거라고 생각 됨.
RemoteSigned
Windows 서버 컴퓨터에 대한 기본 실행 정책.
내가 컴퓨터에서 생성한 스크립트 + 서명 된 스크립트만 실행 가능하다.
Restricted
Powershell의 기본 실행 규칙. 아무것도 건드리지 않았다면 이 상태.
poetry
명령어 등 스크립트 실행이 안된다.
Unrestricted
서명되지 않은 모든 스크립트를 실행 시킬 수 있음. (보안의 위험)
기본적으로 default값인 Restricted
이외에 사용자가 임의로 보안 정책을 설정했을 경우 발생하는 보안 문제는 전부 사용자 책임이니 잘 생각해서 설정해야 한다.
>>>ExecutionPolicy
현재 내 컴퓨터의 보안 정책을 확인할 수 있다.
기본적으로 처음에는 모두 Restricted
상태.
>>>Set-ExecutionPolicy 변경할 정책
이렇게 입력해주면 아래와 같은 경고문이 뜬다.
덜덜...
좀 두렵긴 하지만 설정을 변경하지 않으면 스크립트 파일 자체가 실행이 안되니까 Y
를 입력해 변경해주자.
잘 변경되었다!!
잘 실행된다!!