다음을 통해 공유


WinGet 구성 파일의 신뢰성을 확인하는 방법

WinGet 구성 파일을 실행하기 전에 파일에 나열된 각 리소스를 검토하고 평가하여 운영 체제에 설치, 변경 또는 적용되는 항목과 신뢰할 수 있고 안전한 원본에서 제공되는 리소스를 완전히 알고 있는지 확인하는 것이 좋습니다.

WinGet 구성 명령을 사용하는 방법에 대해 자세히 알아봅니다.

보안 알림 및 승인

구성 계약 수락 매개 변수를 명시적으로 전달하지 않는 한, 구성을 실행하기 전에 구성을 확인하는 책임을 검토하고 승인하라는 메시지가 사용자에게 표시됩니다.

WinGet 구성 파일에서 사용할 수 있는 무인 설치 혜택으로 인해 명시적 설치 알림 및 승인 수가 크게 줄어듭니다. 대신, WinGet 구성 파일을 사용하려면 winget configure 명령을 사용하여 구성을 실행하기 전에 파일을 사전에 부지런히 보안 검사해야 합니다. 설치될 각 패키지와 신뢰할 수 있는 원본에서 제공되는지 확인하기 위해 활용할 각 PowerShell DSC(Desired State Configuration) 모듈을 검토할 책임이 있습니다.

유의 사항:

  • 관리 셸에서 winget configure을(를) 통해 구성을 실행하는 사용자는 관리 컨텍스트에서 변경한 시스템에 대한 메시지가 표시되지 않습니다.

  • 사용자 컨텍스트에서 winget configure을(를) 통해 구성을 실행하는 사용자는 전체 구성에 대해 단일 UAC(사용자 계정 컨트롤) 권한 상승 프롬프트만 받을 수 있습니다.

구성 리소스 검토

WinGet 구성은 PowerShell DSC 를 활용하여 사용자 시스템에 구성을 적용합니다. 구성 파일은 원하는 상태를 적용하는 데 사용할 PowerShell DSC 리소스를 지정합니다. 구성 파일 실행에 동의하기 전에 각 DSC 리소스를 검토해야 합니다.

PowerShell DSC 리소스를 검토하려면 다음을 수행합니다.

  • PowerShell Get-PSRepository cmdlet을 사용하여 구성된 리포지토리를 보고 파일을 실행하기 전에 리소스를 공급할 위치를 결정할 수 있습니다.

구성 리소스를 검토할 때는 다음 사항에 유의해야 합니다.

  • PowerShell DSC 리소스는 로컬 컴퓨터에 추가 DSC 리소스 및 이진 파일을 끌어와 실행하는 것을 포함하지만 이에 국한되지 않는 임의 코드를 실행하도록 구성할 수 있습니다. 이렇게 하려면 게시자의 리소스 및 신뢰성에 대한 성실한 무결성 검사가 필요합니다. 예를 들어 DSC 스크립트 리소스는 대상 노드에서 Windows PowerShell 스크립트 블록을 실행하는 메커니즘을 제공합니다(Get, Set 및 Test 스크립트 사용). 스크립트 내용을 검토하지 않고 신뢰할 수 없는 게시자의 스크립트 리소스를 실행하지 마세요.

  • PowerShell 갤러리는 PowerShell 모듈, 스크립트 및 DSC 리소스를 검색, 공유 및 획득하기 위한 중앙 리포지토리입니다. 이 리포지토리는 Microsoft에서 확인되지 않았으며 기본적으로 신뢰할 수 없는 다양한 작성자 및 게시자의 리소스를 포함합니다. 각 패키지에는 갤러리 계정에 Owner 필드가 강하게 연결된 관련 메타데이터가 있는 갤러리의 특정 페이지가 있습니다(작성자 필드보다 신뢰할 수 있음). 좋은 의도로 게시되지 않았다고 생각되는 패키지를 발견한 경우 해당 패키지의 페이지에서 "신고하기"를 선택합니다. PowerShell 갤러리에 대해 자세히 알아보세요.

구성 파일 테스트

깨끗하고 격리된 환경에서 모든 WinGet 구성 파일을 테스트하는 것이 좋습니다. 몇 가지 테스트 옵션은 다음과 같습니다.