본문 바로가기
윈도우 오류

윈도우 파워쉘: 이 시스템에서 스크립트를 실행할 수 없으므로 ps1 파일을 로드할 수 없습니다. 보안 오류 PSSecurityException, UnauthorizedAccess

by 젤리아드 2025. 2. 20.
반응형

윈도 운영체제 파워쉘에서 ps1 스크립트 파일을 실행했는데 다음 오류가 발생했습니다.

Windows PowerShell
PS > .\test.ps1
.\test.ps1: 이 시스템에서 스크립트를 실행할 수 없으므로 test.ps1 파일을 로드할 수 없습니다.
자세한 내용은 about_Execution_Policies
(https://go.microsoft.com/fwlink/?LinkID=135170)를 참조하십시오.
위치 줄:1 문자:1
+ .\test.ps1
+ ~~~
 + CategoryInfo : 보안 오류: (:) [], PSSecurityException
 + FullyQualifiedErrorId : UnauthorizedAccess
오류 메시지

이 보안 오류가 발생한다면 파워쉘 실행 정책이 안전하게 설정되어 있다는 뜻입니다.

ps1 스크립트 파일을 실행하려면 일시적으로 실행 정책을 우회해야 합니다.

(주의! ps1 스크립트 파일에 악성 코드가 포함되어 있을 수도 있으므로 반드시 신뢰할 수 있는 출처에서 얻은 ps1 스크립트 파일만 실행하세요)

 

아래 링크는 오류 메시지에 표시된 마이크로소프트 공식 파워쉘 실행 정책에 관한 글입니다.

https://go.microsoft.com/fwlink/?LinkID=135170  

 

about_Execution_Policies - PowerShell

PowerShell 실행 정책을 설명하고 이를 관리하는 방법을 설명합니다.

learn.microsoft.com

 

 

Microsoft Defender로 ps1 스크립트 파일을 검사합니다.

run.ps1 (우클릭)
열기
연결 프로그램
공유
PowerShell에서 실행
즐겨찾기에 추가
압축 대상...
경로로 복사
속성
메모장에서 편집
추가 옵션 표시
ps1 파일 메뉴

파일 탐색기에서 ps1 파일을 우클릭합니다.

(윈도 11에서만) "추가 옵션 표시"를 클릭합니다.

 

run.ps1
열기
편집
PowerShell에서 실행
메모장에서 편집
즐겨찾기에 추가
Microsoft Defender(으)로 검사...
연결 프로그램...
ps1 파일 검사

"Microsoft Defender(으)로 검사"를 클릭합니다.

검사에서 위협이 발견될 경우 스크립트 파일을 실행하지 않는 것이 좋습니다.

(이 검사가 통과됐다고 해서 ps1 스크립트 파일이 100% 안전하다고 보장하지 않습니다)

 

Windows PowerShell
+ CategoryInfo : 보안 오류 : (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
PS > powershell -NoProfile -ExecutionPolicy RemoteSigned -File .\test.ps1
ps1 파일 실행

파워쉘 실행 정책을 일시적으로 우회해서 ps1 스크립트 파일을 실행하려면 다음 명령어를 실행합니다.

powershell -NoProfile -ExecutionPolicy RemoteSigned -File (ps1 파일이 존재하는 경로와 이름)

 

현재 디렉터리(폴더)에 ps1 파일이 존재한다면 파일 경로에 ".\(ps1파일이름).ps1"라고 입력하면 됩니다.

다른 디렉터리에 존재한다면 전체 경로를 입력합니다

(예 D:\sample\test.ps1)

반응형

댓글