省略可能: Windows Defender アプリケーションコントロールのコード署名証明書をCreateする

Windows Defender アプリケーションコントロールの一部の機能は、特定の Windows バージョンでのみ使用できます。 Windows Defender アプリケーション制御機能の可用性について詳しくは、こちらをご覧ください。

Windows Defender アプリケーション制御 (WDAC) を展開するときに、カタログ ファイルまたは WDAC ポリシーに内部的に署名することが必要になる場合があります。 この署名を行うには、Microsoft の 信頼された署名 サービス、公開されているコード署名証明書、または内部 CA を使用する必要があります。 コード署名証明書を購入した場合は、この記事をスキップして、代わりに「Windows Defender アプリケーション制御展開ガイド」に記載されている他の記事に従ってください。

内部 CA を使用している場合は、以下の手順でコード署名証明書を作成してください。

Warning

WDAC ポリシー署名用の署名証明書を作成するときに、署名証明書が次の規則に従わないと、ブート エラー (ブルー スクリーン) が発生する可能性があります。

  • 基本ポリシーと補足ポリシーを含むすべてのポリシーは、 PKCS 7 Standard に従って署名する必要があります。
  • RSA キーは、2K、3K、または 4K のキー サイズでのみ使用します。 ECDSA はサポートされていません。
  • SHA-256、SHA-384、または SHA-512 は、2022 年 11 月の累積的なセキュリティ更新プログラムを適用した後、Windows 11および Windows 10 および Windows Server 2019 以降のダイジェスト アルゴリズムとして使用できます。 その他のすべてのデバイスでは SHA256 のみがサポートされます。
  1. 証明機関 Microsoft 管理コンソール (MMC) スナップインを開き、発行元の CA を選びます。

  2. 接続したら、[ 証明書テンプレート] を右クリックし、[ 管理 ] を選択して認定テンプレート コンソールを開きます。

    証明書テンプレートを示す CA スナップイン。

    図 1. 証明書テンプレートを管理する

  3. ナビゲーション ウィンドウで、コード署名証明書を右クリックし、[ テンプレートの複製] を選択します。

  4. [互換性] タブで、 [結果的な変更を表示] チェック ボックスをオフにします。 [証明機関] の一覧から [Windows Server 2012] を選び、 [証明書の受信者] の一覧から [Windows 8 / Windows Server 2012] を選びます。

  5. [全般] タブで、[テンプレート表示名][テンプレート名] を指定します。 この例では、"WDAC Catalog Signing Certificate" という名前を使用します。

  6. [要求の処理] タブで、[秘密キーのエクスポートを許可する] チェック ボックスをオンにします。

  7. [拡張機能] タブで、[基本制約] チェック ボックスを選択し、[編集] を選択します

  8. 図 2 に示すように、[基本制約拡張機能の編集] ダイアログ ボックスで、[この拡張機能を有効にする] チェック ボックスをオンにします。

    基本制約拡張機能を編集します。

    図 2. 新しいテンプレートで制約を選ぶ

  9. 発行された証明書の承認を証明書マネージャーが行う必要がある場合は、[発行の要件] タブで [CA 証明書マネージャーの許可] を選びます。

  10. [サブジェクト名] タブで [要求に含まれる]を選びます。

  11. [セキュリティ] タブで、証明書の要求に使われるすべてのアカウントが証明書を登録する権利を持つことを確認します。

  12. [ OK] を選択 してテンプレートを作成し、証明書テンプレート コンソールを閉じます。

この証明書テンプレートが作成されたら、CA が発行したテンプレート ストアに公開する必要があります。 そのためには、次の手順を実行します。

  1. 証明機関 MMC スナップインで、[ 認定テンプレート] を右クリックし、[ 新規作成] をポイントし、図 3 に示すように [ 発行する証明書テンプレート] を選択します。

    発行する証明書テンプレートを選択します。

    図 3. 発行する新しい証明書テンプレートを選ぶ

    作成したテンプレートを含め、発行できるテンプレートの一覧が表示されます。

  2. WDAC カタログ署名証明書を選択し、[OK] を選択します

テンプレートを発行できるようになったので、カタログ ファイルを作成して署名するWindows 10またはWindows 11を実行しているコンピューターからテンプレートを要求する必要があります。 まず、MMC を開き、次の手順を実行します。

  1. MMC の [ ファイル ] メニューの [ スナップインの追加と削除] を選択します。 [証明書]をダブルクリックして、 [ユーザー アカウント]を選びます。

  2. [証明書] スナップインで、[個人用ストア] フォルダーを右クリックし、[ すべてのタスク] をポイントして、[ 新しい証明書の要求] を選択します。

  3. [ 次へ ] を 2 回選択して、証明書の選択リストに移動します。

  4. 図 4 に示すように、[証明書の要求] の一覧で、新しく作成したコード署名証明書を選び、追加の情報を要求する青色のテキストを選びます。

    証明書の要求: 詳細情報が必要です。

    図 4. コード署名証明書に関する追加の情報を取得する

  5. [証明書のプロパティ] ダイアログ ボックスの [種類] で、[共通名] を選びます。 [ 値] に、証明書のわかりやすい名前を指定し (この例では[ $ContosoSigningCert] を選択します)、[ 追加] を選択します。 追加したら、[ OK] を選択します。

  6. 登録し、終了します。

証明書マネージャーが発行された証明書を承認する必要があり、テンプレートの管理承認を要求するように選択した場合、要求は CA で承認されてからクライアントに発行される必要があります。

この証明書は、カタログ ファイルとコード整合性ポリシーに署名するコンピューター上のユーザーの個人用ストアにインストールする必要があります。 証明書の要求に使用したコンピューターと同じコンピューターで署名が行われる場合は、次の手順をスキップできます。 別のコンピューターで署名する場合は、必要なキーとプロパティを使用して .pfx 証明書をエクスポートする必要があります。 そのためには、次の手順を実行します。

  1. 証明書を右クリックし、[ すべてのタスク] をポイントし、[エクスポート] を選択 します

  2. [ 次へ] を選択し、[はい] を選択し 、秘密キーをエクスポートします

  3. 既定の設定を選び、 [すべての拡張プロパティをエクスポートする]を選びます。

  4. パスワードを設定し、エクスポート パスを選んで、WDACCatSigningCert.pfx をファイル名として選びます。

証明書がエクスポートされたら、カタログ ファイルやコード整合性ポリシーに署名するユーザーの個人用ストアに証明書をインポートします。このストアは、カタログ ファイルやコード整合性ポリシーへの署名に使用するコンピューター上にある個人用ストアです。