다음을 통해 공유


S 모드에서 Windows 10용 Windows 앱 테스트

Windows 앱을 테스트하여 Windows 10을 S 모드로 실행하는 디바이스에서 올바르게 작동하는지 확인할 수 있습니다. 실제로 Microsoft Store에 앱을 게시하려는 경우 스토어 요구 사항이므로 이 작업을 수행해야 합니다. 앱을 테스트하려면 Windows 10 Pro를 실행하는 디바이스에 WDAC(Windows Defender 애플리케이션 제어) 정책을 적용할 수 있습니다.

WDAC 정책은 Windows 10 S에서 실행하기 위해 앱이 준수해야 하는 규칙을 적용합니다.

중요합니다

이러한 정책을 가상 머신에 적용하는 것이 좋지만 로컬 머신에 적용하려면 정책을 적용하기 전에 이 항목의 "다음, 정책을 설치하고 시스템을 다시 시작하세요" 섹션의 모범 사례 지침을 검토해야 합니다.

먼저 정책을 다운로드한 다음, 정책을 선택합니다.

여기에서 WDAC 정책을 다운로드 합니다.

그런 다음 가장 적합한 항목을 선택합니다. 각 정책에 대한 요약은 다음과 같습니다.

정책 집행 서명 인증서 파일 이름
감사 모드 정책 문제를 기록/차단하지 않음 상점 SiPolicy_Audit.p7b
프로덕션 모드 정책 상점 SiPolicy_Enforced.p7b
자체 서명된 앱을 사용하는 제품 모드 정책 AppX 테스트 인증서 SiPolicy_DevModeEx_Enforced.p7b

감사 모드 정책으로 시작하는 것이 좋습니다. 코드 무결성 이벤트 로그를 검토하고 해당 정보를 사용하여 앱을 조정할 수 있습니다. 그런 다음 최종 테스트 준비가 되면 프로덕션 모드 정책을 적용합니다.

각 정책에 대한 자세한 내용은 다음과 같습니다.

감사 모드 정책

이 모드에서는 Windows 10 S에서 지원되지 않는 작업을 수행하는 경우에도 앱이 실행됩니다. Windows는 코드 무결성 이벤트 로그에 차단된 실행 파일을 기록합니다.

이벤트 뷰어를 연 다음 애플리케이션 및 서비스 로그-Microsoft-Windows-CodeIntegrity-Operational>>>> 위치로 이동하여 해당 로그를 찾을 수 있습니다.

코드 무결성 이벤트 로그

이 모드는 안전하며 시스템이 시작되지 않도록 방지하지 않습니다.

(선택 사항) 호출 스택에서 특정 오류 지점 찾기

호출 스택에서 차단 문제가 발생하는 특정 지점을 찾으려면 이 레지스트리 키를 추가 한 다음 커널 모드 디버깅 환경을 설정합니다.

열쇠 이름 유형 가치
HKEY_LOCAL_MACHINE\SYSTEM\CurentControlSet\Control\CI 디버그 플래그 프로그램 레지스트리 데이터 타입인 REG_DWORD 1

레지스트리 설정

프로덕션 모드 정책

이 정책은 Windows 10 S에서 실행을 시뮬레이션할 수 있도록 Windows 10 S와 일치하는 코드 무결성 규칙을 적용합니다. 이는 가장 엄격한 정책이며 최종 프로덕션 테스트에 적합합니다. 이 모드에서는 앱이 사용자의 디바이스에서 적용되는 것과 동일한 제한 사항이 적용됩니다. 이 모드를 사용하려면 Microsoft Store에서 앱을 서명해야 합니다.

자체 서명된 앱을 사용하는 프로덕션 모드 정책

이 모드는 프로덕션 모드 정책과 유사하지만 zip 파일에 포함된 테스트 인증서로 서명된 항목을 실행할 수도 있습니다. 이 zip 파일의 AppxTestRootAgency 폴더에 포함된 PFX 파일을 설치합니다. 그런 다음, 앱을 사용하여 서명합니다. 이렇게 하면 스토어 서명을 요구하지 않고도 신속하게 반복할 수 있습니다.

인증서의 게시자 이름이 앱의 게시자 이름과 일치해야 하므로 ID 요소의 게시자 특성 값을 일시적으로 "CN=Appx Test Root Agency Ex"로 변경해야 합니다. 테스트를 완료한 후 해당 특성을 원래 값으로 다시 변경할 수 있습니다.

다음으로, 정책을 설치하고 시스템을 다시 시작합니다.

이러한 정책이 부팅 실패로 이어질 수 있으므로 이러한 정책을 가상 머신에 적용하는 것이 좋습니다. 이러한 정책은 드라이버를 포함하여 Microsoft Store에서 서명하지 않은 코드 실행을 차단하기 때문입니다.

이러한 정책을 로컬 컴퓨터에 적용하려면 감사 모드 정책으로 시작하는 것이 가장 좋습니다. 이 정책을 사용하면 코드 무결성 이벤트 로그를 검토하여 적용된 정책에서 중요한 항목이 차단되지 않도록 할 수 있습니다.

정책을 적용할 준비가 되면 선택한 정책의 .P7B 파일을 찾아서 이름을 SIPolicy.P7B로 변경하고, 그 파일을 시스템의 다음 위치에 저장하십시오: C:\Windows\System32\CodeIntegrity\.

그런 다음 시스템을 다시 시작합니다.

비고

시스템에서 정책을 제거하려면 .P7B 파일을 삭제한 후 시스템을 다시 시작합니다.

다음 단계

질문에 대한 답변 찾기

질문이 있으세요? Stack Overflow에 대해 문의하세요. 우리 팀은 이러한 태그를 모니터링 합니다.

앱 컨설팅 팀에서 게시한 자세한 블로그 문서 검토

데스크톱 브리지를 사용하여 Windows 10 S에서 데스크톱 애플리케이션 포팅 및 테스트를 참조하세요.

S 모드에서 Windows를 더 쉽게 테스트할 수 있는 도구에 대해 알아봅니다.

압축 풀기, 수정, 재패키지, APPX 서명 참조