Windows アプリの S モードの Windows 10 をテストするTest your Windows app for Windows 10 in S mode

Windows アプリをテストして、S モードの Windows 10 を実行するデバイスで正しく動作することを確認できます。You can test your Windows app to ensure that it will operate correctly on devices that run Windows 10 in S mode. 実際には、Microsoft Store にアプリを公開する場合、これはストア要件のため実行する必要があります。In fact, if you plan to publish your app to the Microsoft Store, you must do this because it is a store requirement. アプリをテストするために、Windows 10 Pro を実行しているデバイスでは Device Guard コードの整合性ポリシーを適用できます。To test your app, you can apply a Device Guard Code Integrity policy on a device that is running Windows 10 Pro.


Device Guard コードの整合性ポリシーを適用するデバイスでは、Windows 10 Creators Edition (10.0 ビルド 15063) 以降が実行されている必要があります。The device on which you apply the Device Guard Code Integrity policy must be running Windows 10 Creators Edition (10.0; Build 15063) or later.

Device Guard コードの整合性ポリシーは、Windows 10 S で実行するために従う必要のある規則がアプリに適用されます。The Device Guard Code Integrity policy enforces the rules that apps must conform to in order to run on Windows 10 S.


これらのポリシーを仮想マシンに適用することをお勧めします。ただし、ローカル コンピューターに適用する場合は、ポリシーを適用する前に、このトピックの「次に、ポリシーをインストールしてシステムを再起動する」セクションに記載されているベスト プラクティスのガイダンスを確認してください。We recommend that you apply these policies to a virtual machine, but if you want to apply them to your local machine, make sure to review our best practice guidance in the "Next, install the policy and restart your system" section of this topic before you apply a policy.

まず、ポリシーをダウンロードして 1 つを選択するFirst, download the policies and then choose one

Device Guard コード整合性ポリシーは、こちらからダウンロードできます。Download the Device Guard Code Integrity policies here.

次に、最も希望に合うものを 1 つ選びます。Then, choose the one that makes the most sense to you. 各ポリシーの概要を以下に示します。Here's summary of each policy.

ポリシーPolicy 強制Enforcement 署名用の証明書Signing certificate ファイル名File name
監査モード ポリシーAudit mode policy 問題をログに記録/ブロックしないLogs issues / does not block ストアStore SiPolicy_Audit.p7bSiPolicy_Audit.p7b
実稼働モード ポリシーProduction mode policy はいYes ストアStore SiPolicy_Enforced.p7bSiPolicy_Enforced.p7b
自己署名アプリを使用する実稼働モード ポリシーProduct mode policy with self-signed apps はいYes AppX テスト証明書AppX Test Cert SiPolicy_DevModeEx_Enforced.p7bSiPolicy_DevModeEx_Enforced.p7b

監査モード ポリシーから開始することをお勧めします。We recommend that you start with audit mode policy. コードの整合性イベント ログを確認し、その情報を使用してアプリを調整することができます。You can review the Code Integrity Event Logs and use that information to help you make adjustments to your app. 最終的なテストの準備ができたら、実稼働モード ポリシーを適用します。Then, apply the Production mode policy when you're ready for final testing.

各ポリシーについて、もう少し詳しい情報を次に示します。Here’s a bit more information about each policy.

監査モード ポリシーAudit mode policy

このモードでは、Windows 10 S でサポートされていないタスクがアプリで実行される場合も、そのアプリを実行できます。実稼働でブロックされる実行可能ファイルは、Windows によってコード整合性イベント ログに記録されます。With this mode, your app runs even if it performs tasks that aren’t supported on Windows 10 S. Windows logs any executables that would have been blocked into the Code Integrity Event Logs.

これらのログは、イベントビューアーを開いて、次の場所に移動することで見つけることができます。アプリケーションとサービスログ-> Microsoft > Windows-> CodeIntegrity-> Operational。You can find those logs by opening the Event Viewer, and then browsing to this location: Application and Services Logs->Microsoft->Windows->CodeIntegrity->Operational.

コードの整合性イベント ログ

このモードは安全であり、システムの起動を妨げません。This mode is safe and it won't prevent your system from starting.

(省略可能) 呼び出し履歴で特定の障害箇所を見つける(Optional) Find specific failure points in the call stack

呼び出し履歴でブロックに関する問題が発生している特定のポイントを見つけるには、次のレジストリ キーを追加してから、カーネル モード デバッグ環境をセットアップします。To find specific points in the call stack where blocking issues occur, add this registry key, and then set up a kernel-mode debugging environment.

キーKey 名前Name Type Value


実稼働モード ポリシーProduction mode policy

このポリシーでは、Windows 10 S に合致する整合性規則が適用され、Windows 10 S での実行をシミュレートできます。これは最も厳しいポリシーであり、最終的な実稼働テストに適しています。This policy enforces code integrity rules that match Windows 10 S so that you can simulate running on Windows 10 S. This is the strictest policy, and it is great for final production testing. このモードでは、アプリへの制限が、ユーザーのデバイスでの制限と同じである必要があります。In this mode, your app is subject to the same restrictions as it would be subject to on a user's device. このモードを使用するには、Microsoft Store によるアプリへの署名が必要です。To use this mode, your app must be signed by the Microsoft Store.

自己署名アプリを使用する実稼働モード ポリシーProduction mode policy with self-signed apps

このモードは、実稼働モード ポリシーに似ていますが、zip ファイルに含まれているテスト証明書で署名されているアプリを実行できる点が異なります。This mode is similar to the Production mode policy, but it also allows things to run that are signed with the test certificate that is included in the zip file. この zip ファイル内にある AppxTestRootAgency フォルダーに含まれる PFX ファイルをインストールします。Install the PFX file that is included in the AppxTestRootAgency folder of this zip file. 次に、それを使用してアプリに署名します。Then, sign your app with it. この方法では、ストアによる署名を必要としないため、迅速に反復できます。That way, you can quickly iterate without requiring Store signing.

証明書の発行元名がアプリの発行者名と一致する必要があるため、Identity 要素の Publisher 属性の値を "CN=Appx Test Root Agency Ex" に一時的に変更する必要があります。Because the publisher name of your certificate must match the publisher name of your app, you'll have to temporarily change the value of the Identity element's Publisher attribute to "CN=Appx Test Root Agency Ex". テストの完了後に、この属性を元の値に戻すことができます。You can change that attribute back to it's original value after you've completed your tests.

次に、ポリシーをインストールしてシステムを再起動するNext, install the policy and restart your system

これらのポリシーは起動エラーを招く可能性があるため、仮想マシンに適用することをお勧めします。We recommend that you apply these policies to a virtual machine because these policies might lead to boot failures. エラーが発生するのは、ドライバーを含めて Microsoft Store によって署名されていないコードの実行がポリシーによってブロックされるためです。That's because these policies block the execution of code that isn't signed by the Microsoft Store, including drivers.

ローカル コンピューターにこれらのポリシーを適用する場合は、監査モード ポリシーから始めることをお勧めします。If you want to apply these policies to your local machine, it's best to start with the Audit mode policy. このポリシーでは、適用されたポリシーで重要なコードがブロックされないことをコード整合性イベント ログで確認できます。With this policy, you can review the Code Integrity Event Logs to ensure that nothing critical would be blocked in an enforced policy.

ポリシーを適用する準備ができたら、を見つけます。P7B ファイルを選択したポリシーの場合は、名前をSipolicy. P7Bに変更し、そのファイルをシステム上のこの場所に保存します。C:\Windows\System32\CodeIntegrity\When you're ready to apply a policy, find the .P7B file for the policy that you chose, rename it to SIPolicy.P7B, and then save that file to this location on your system: C:\Windows\System32\CodeIntegrity\.

システムを再起動します。Then, restart your system.


システムからポリシーを削除するには、.P7B ファイルを削除してからシステムを再起動します。To remove a policy from your system, delete the .P7B file and then restart your system.

次の手順Next steps

質問に対する回答を検索するFind answers to your questions

ご質問がある場合は、Have questions? Stack Overflow でお問い合わせください。Ask us on Stack Overflow. Microsoft のチームでは、これらのタグをチェックしています。Our team monitors these tags. こちらから質問することもできます。You can also ask us here.

フィードバックの提供または機能に関する提案Give feedback or make feature suggestions

UserVoice のページをご覧ください。See UserVoice.

アプリコンサルティングチームによって投稿された詳細なブログ記事を確認するReview a detailed blog article that was posted by our App Consult Team

Windows 10 S でのデスクトップ ブリッジを使用した従来のデスクトップ アプリケーションの移植とテストに関する記事を参照してください。See Porting and testing your classic desktop applications on Windows 10 S with the Desktop Bridge.

S モードでの Windows のテストを容易にするツールについて説明します。Learn about tools that make it easier to test for Windows in S Mode

APPX のアンパッケージ、変更、再パッケージ、署名に関する記事をご覧ください。See Unpackage, modify, repackage, sign an APPX.