it-swarm-korea.com

PowerShell의 RemoteSigned 실행 정책은 AllSigned와 어떻게 다릅니 까?

저는 여전히 PowerShell을 처음 접했고 최근 PowerShell 스크립트 작성 및 사용에 관한 블로그 게시물에서이 내용을 읽었습니다.

악의적 인 스크립트의 실행을 방지하기 위해 PowerShell은 실행 정책을 시행합니다. 기본적으로 실행 정책은 제한으로 설정되어 PowerShell 스크립트가 실행되지 않습니다. 다음 cmdlet을 사용하여 현재 실행 정책을 확인할 수 있습니다.

Get-ExecutionPolicy

사용할 수있는 실행 정책은 다음과 같습니다.

  • 제한된-스크립트가 실행되지 않습니다.
  • RemoteSigned-로컬로 생성 된 스크립트는 실행되지만 인터넷에서 다운로드 한 스크립트는 신뢰할 수있는 게시자가 디지털 서명하지 않은 경우에는 작동하지 않습니다.
  • AllSigned-스크립트는 신뢰할 수있는 게시자가 서명 한 경우에만 실행됩니다.
  • nrestricted-스크립트는 스크립트의 출처와 서명 여부에 관계없이 실행됩니다.

다음 cmdlet을 사용하여 PowerShell의 실행 정책을 설정할 수 있습니다.

Set-ExecutionPolicy <policy name>

나에게 Remote Signed에 대한 설명에서 "신뢰할 수있는 게시자가 디지털 서명하지 않은 경우"라는 표기법은 AllSigned와 동일하게 작동 함을 의미합니다. 어딘가에 누락 된 차이점이 있습니까?

28
Iszi

분명히 AllSigned를 사용하려면 모든 모듈/스냅인 및 스크립트에 코드 서명이 필요합니다. RemoteSigned는 원격 파일 서명 만 필요합니다. 원격 파일이란 무엇입니까?

정식 답변은 PowerShell 블로그에 있습니다. http://blogs.msdn.com/b/powershell/archive/2007/03/07/how-does-the-remotesigned-execution-policy-work.aspx

그러나 결론은 다음과 같습니다. RemoteSigned 는 모듈/스냅인 및 스크립트의 코드 서명 만 필요합니다. 'Zone'의 "인터넷"영역에서 플래그 "Internet Explorer 보안 강화"가 활성화되어 있지 않으면 식별자의 대체 데이터 스트림입니다.이 경우 "인트라넷"플래그가 지정된 파일과 UNC 경로도 포함됩니다.

16
Jaykul

차이점은 RemoteSigned가 서명되지 않은 스크립트를 로컬에서 실행하는 반면 AllSigned는 원본에 관계없이 모든 스크립트에 서명해야한다는 것입니다.

8
Steve