Configuration Managerでの PKI 証明書の計画

Configuration Manager (現在のブランチ) に適用

Configuration Managerでは、公開キー 基盤 (PKI) ベースのデジタル証明書が使用可能な場合に使用されます。 セキュリティを強化するためにこれらの証明書を使用することをお勧めしますが、ほとんどのシナリオでは必要ありません。 これらの証明書は、Configuration Managerとは別に展開して管理する必要があります。

この記事では、実装の計画に役立つ、Configuration Managerの PKI 証明書に関する情報を提供します。 Configuration Managerでの証明書の使用に関する一般的な情報については、「Configuration Managerの証明書」を参照してください。

PKI 証明書失効

Configuration Managerで PKI 証明書を使用する場合は、証明書失効リスト (CRL) の使用を計画します。 デバイスは CRL を使用して、接続しているコンピューター上の証明書を確認します。 CRL は、証明機関 (CA) が作成して署名するファイルです。 CA が発行したが失効した証明書の一覧が含まれます。 証明書管理者が証明書を取り消すと、その拇印が CRL に追加されます。 たとえば、発行された証明書が侵害されていることがわかっているか、疑われる場合です。

重要

CA が発行すると、CRL の場所が証明書に追加されるため、使用する PKI 証明書を展開する前に、CRL の計画Configuration Manager確認してください。

IIS では常にクライアント証明書の CRL がチェックされ、Configuration Managerでこの構成を変更することはできません。 既定では、Configuration Manager クライアントは常にサイト システムの CRL をチェックします。 サイト プロパティを指定し、CCMSetup プロパティを指定して、この設定を無効にします。

証明書失効チェックを使用しているが CRL が見つからないコンピューターは、証明書チェーン内のすべての証明書が失効したかのように動作します。 この動作は、証明書が証明書失効リストに含まれているかどうかを確認できないためです。 このシナリオでは、証明書を必要とし、CRL チェックを含むすべての接続が失敗します。 HTTP の場所を参照して CRL にアクセスできることを検証する場合は、Configuration Manager クライアントが LOCAL SYSTEM として実行されることに注意してください。 ユーザー コンテキストでの Web ブラウザーでの CRL アクセシビリティのテストは成功する可能性がありますが、同じ CRL URL への HTTP 接続を試行すると、コンピューター アカウントがブロックされる可能性があります。 たとえば、プロキシなどの内部 Web フィルター ソリューションが原因でブロックされる可能性があります。 Web フィルタリング ソリューションの承認済みリストに CRL URL を追加します。

証明書が使用されるたびに CRL をチェックすると、失効した証明書の使用に対するセキュリティが強化されます。 これにより、接続の遅延が発生し、クライアントでの処理が増えます。 organizationでは、インターネットまたは信頼されていないネットワーク上のクライアントに対して、このセキュリティ チェックが必要になる場合があります。

クライアントが CRL をチェックする必要があるかどうかを判断Configuration Manager前に、PKI 管理者に問い合わせてください。 次の条件が両方とも当てはまる場合は、このオプションをConfiguration Managerで有効にしておくことを検討してください。

  • PKI インフラストラクチャは CRL をサポートしており、すべてのConfiguration Managerクライアントが見つけられるように公開されています。 これらのクライアントには、インターネット上のデバイスと、信頼されていないフォレスト内のデバイスが含まれる場合があります。

  • PKI 証明書を使用するように構成されているサイト システムへの接続ごとに CRL をチェックする要件は、次の要件を超えています。

    • 接続の高速化
    • クライアントでの効率的な処理
    • クライアントが CRL を見つけることができない場合にサーバーに接続できないリスク

PKI 信頼されたルート証明書

IIS サイト システムで HTTP 経由のクライアント認証に PKI クライアント証明書を使用する場合、または HTTPS 経由のクライアント認証と暗号化に PKI クライアント証明書を使用する場合は、ルート CA 証明書をサイト プロパティとしてインポートする必要がある場合があります。 次の 2 つのシナリオを次に示します。

  • Configuration Managerを使用してオペレーティング システムを展開し、管理ポイントは HTTPS クライアント接続のみを受け入れます。

  • 管理ポイントが信頼するルート証明書にチェーンしない PKI クライアント証明書を使用します。

    注:

    管理ポイントに使用するサーバー証明書を発行する同じ CA 階層からクライアント PKI 証明書を発行する場合、このルート CA 証明書を指定する必要はありません。 ただし、複数の CA 階層を使用していて、それらが相互に信頼されているかどうかがわからない場合は、クライアントの CA 階層のルート CA をインポートします。

Configuration Managerのルート CA 証明書をインポートする必要がある場合は、発行元の CA またはクライアント コンピューターからエクスポートします。 ルート CA でもある発行元 CA から証明書をエクスポートする場合は、秘密キーをエクスポートしないでください。 エクスポートした証明書ファイルを安全な場所に保存して、改ざんを防ぎます。 サイトを設定するときに、ファイルにアクセスする必要があります。 ネットワーク経由でファイルにアクセスする場合は、IPsec を使用して通信が改ざんされないように保護してください。

インポートしたルート CA 証明書が更新された場合は、更新された証明書をインポートします。

これらのインポートされたルート CA 証明書と各管理ポイントのルート CA 証明書によって、証明書発行者リストが作成されます。 コンピューター Configuration Manager次の方法でこの一覧を使用します。

  • クライアントが管理ポイントに接続すると、管理ポイントは、クライアント証明書がサイトの証明書発行者リストの信頼されたルート証明書にチェーンされていることを確認します。 そうでない場合、証明書は拒否され、PKI 接続は失敗します。

  • クライアントが PKI 証明書を選択し、証明書発行者の一覧がある場合は、証明書発行者の一覧で信頼されたルート証明書にチェーンする証明書を選択します。 一致するものがない場合、クライアントは PKI 証明書を選択しません。 詳細については、「 PKI クライアント証明書の選択」を参照してください。

PKI クライアント証明書の選択

IIS サイト システムで HTTP 経由のクライアント認証またはクライアント認証と HTTPS 経由の暗号化に PKI クライアント証明書を使用する場合は、Windows クライアントがConfiguration Managerに使用する証明書を選択する方法を計画します。

注:

一部のデバイスでは、証明書の選択方法がサポートされていません。 代わりに、証明書の要件を満たす最初の証明書が自動的に選択されます。 たとえば、macOS コンピューターとモバイル デバイス上のクライアントでは、証明書の選択方法がサポートされていません。

多くの場合、既定の構成と動作で十分です。 Windows コンピューター上のConfiguration Manager クライアントは、次の条件を次の順序で使用して複数の証明書をフィルター処理します。

  1. 証明書発行者の一覧: 証明書は、管理ポイントによって信頼されているルート CA にチェーンされます。

  2. 証明書は 、Personal の既定の証明書ストアにあります。

  3. 証明書は有効であり、失効せず、期限切れではありません。 チェックの有効性は、秘密キーにアクセス可能であることも確認します。

  4. 証明書にはクライアント認証機能があります。

  5. 証明書のサブジェクト名には、サブ文字列としてローカル コンピューター名が含まれています。

  6. 証明書の有効期間が最も長い。

次のメカニズムを使用して、証明書発行者の一覧を使用するようにクライアントを構成します。

クライアントが最初にインストールされたときに証明書発行者の一覧を持っておらず、まだサイトに割り当てられていない場合は、このチェックをスキップします。 クライアントに証明書発行者リストがあり、証明書発行者リストの信頼されたルート証明書にチェーンされている PKI 証明書がない場合、証明書の選択は失敗します。 クライアントは、他の証明書の選択条件を続行しません。

ほとんどの場合、Configuration Manager クライアントは、一意で適切な PKI 証明書を正しく識別します。 この動作が該当しない場合は、クライアント認証機能に基づいて証明書を選択する代わりに、次の 2 つの代替選択方法を設定できます。

  • クライアント証明書のサブジェクト名に一致する部分的な文字列。 このメソッドは大文字と小文字を区別しない一致です。 サブジェクト フィールドでコンピューターの完全修飾ドメイン名 (FQDN) を使用していて、証明書の選択をドメイン サフィックスに基づいて選択する場合に適 contoso.com。 この選択方法を使用すると、証明書をクライアント証明書ストア内の他のユーザーと区別する、証明書のサブジェクト名内の連続する文字の文字列を識別できます。

    注:

    サブジェクトの別名 (SAN) と一致する部分文字列をサイト設定として使用することはできません。 CCMSetup を使用して SAN の部分的な文字列一致を指定できますが、次のシナリオではサイト プロパティによって上書きされます。

    • クライアントは、Active Directory Domain Servicesに発行されたサイト情報を取得します。
    • クライアントは、クライアント プッシュ インストールを使用してインストールされます。

    SAN で部分的な文字列一致を使用するのは、クライアントを手動でインストールするときと、クライアントがActive Directory Domain Servicesからサイト情報を取得しない場合のみです。 たとえば、これらの条件はインターネット専用クライアントに適用されます。

  • クライアント証明書のサブジェクト名の属性値またはサブジェクトの別名 (SAN) 属性値の一致。 このメソッドは、大文字と小文字が区別される一致です。 RFC 3280 に準拠して X500 識別名または同等のオブジェクト識別子 (OID) を使用していて、属性値に基づいて証明書を選択する場合に適しています。 証明書を一意に識別または検証し、証明書ストア内の他の属性と区別するために必要な属性とその値のみを指定できます。

次の表に、クライアント証明書の選択基準Configuration Managerサポートする属性値を示します。

OID 属性 識別名属性 属性定義
0.9.2342.19200300.100.1.25 DC ドメイン コンポーネント
1.2.840.113549.1.9.1 電子メールまたは電子メール 電子メール アドレス
2.5.4.3 Cn 共通名
2.5.4.4 Sn サブジェクト名
2.5.4.5 SERIALNUMBER シリアル番号
2.5.4.6 C 国番号
2.5.4.7 L 地域
2.5.4.8 S または ST 州名または都道府県名
2.5.4.9 通り 番地
2.5.4.10 O 組織名
2.5.4.11 Ou 組織単位
2.5.4.12 T またはタイトル Title
2.5.4.42 G または GN または GivenName 指定された名前
2.5.4.43 I または Initials Initials
2.5.29.17 (値なし) サブジェクトの別名

注:

上記の代替証明書選択方法のいずれかを構成する場合、証明書のサブジェクト名にローカル コンピューター名を含める必要はありません。

選択条件が適用された後に複数の適切な証明書が存在する場合は、既定の構成をオーバーライドして、有効期間が最も長い証明書を選択できます。 代わりに、証明書が選択されていないことを指定できます。 このシナリオでは、クライアントは PKI 証明書を使用して IIS サイト システムと通信できません。 クライアントは、割り当てられたフォールバック ステータス ポイントにエラー メッセージを送信して、証明書の選択エラーを警告します。 その後、証明書の選択基準を変更または絞り込むことができます。

クライアントの動作は、失敗した接続が HTTPS または HTTP のいずれを経由したかによって異なります。

  • 失敗した接続が HTTPS 経由の場合: クライアントは HTTP 経由で接続を試み、クライアントの自己署名証明書を使用します。

  • 失敗した接続が HTTP 経由の場合: クライアントは、自己署名クライアント証明書を使用して HTTP 経由でもう一度接続しようとします。

一意の PKI クライアント証明書を識別するために、コンピューター ストアで既定の個人用以外のカスタム ストアを指定することもできます。 Configuration Managerの外部にカスタム証明書ストアを作成します。 有効期間が切れる前に、このカスタム ストアに証明書を展開して更新できる必要があります。

詳細については、「 クライアント PKI 証明書の設定を構成する」を参照してください。

PKI 証明書の移行戦略

Configuration Managerの柔軟な構成オプションを使用すると、クライアントとサイトを徐々に移行し、PKI 証明書を使用してクライアント エンドポイントをセキュリティで保護できます。 PKI 証明書を使用すると、セキュリティが向上し、インターネット クライアントを管理できます。

このプランでは、最初に HTTP 経由でのみ認証を行う PKI 証明書を導入し、次に HTTPS 経由での認証と暗号化を行います。 この計画に従ってこれらの証明書を段階的に導入すると、クライアントが管理されなくなるリスクが軽減されます。 また、Configuration Managerがサポートする最高のセキュリティの恩恵も受けることができます。

Configuration Managerの構成オプションと選択肢の数のため、すべてのクライアントが HTTPS 接続を使用するようにサイトを移行する方法は 1 つもありません。 次の手順では、一般的なガイダンスを提供します。

  1. Configuration Manager サイトをインストールし、サイト システムが HTTPS と HTTP 経由のクライアント接続を受け入れるように構成します。

  2. サイトのプロパティで [Communication Security]\( 通信セキュリティ \) タブを構成します。 [サイト システムの設定][HTTP] または [HTTPS] に設定し、[使用可能な場合は PKI クライアント証明書 (クライアント認証機能) を使用する] を選択します。 詳細については、「 クライアント PKI 証明書の設定を構成する」を参照してください。

  3. クライアント証明書の PKI ロールアウトをパイロットします。 展開の例については、「 Windows コンピューターのクライアント証明書を展開する」を参照してください。

  4. クライアント プッシュ インストール方法を使用してクライアントをインストールします。 詳細については、「クライアント プッシュを使用してConfiguration Managerクライアントをインストールする方法」を参照してください。

  5. Configuration Manager コンソールのレポートと情報を使用して、クライアントの展開と状態を監視します。

  6. [資産とコンプライアンス] ワークスペースの [デバイス] ノードの [クライアント証明書] 列を表示して、クライアント PKI 証明書を使用しているクライアントの数追跡します。

    注:

    PKI 証明書を持つクライアントの場合は、Configuration Manager コンソールに [クライアント証明書] プロパティが自己署名として表示されます。 クライアント コントロール パネルの [クライアント証明書] プロパティに PKI が表示されます。

    また、Configuration Manager HTTPS 準備評価ツール (CMHttpsReadiness.exe) をコンピューターに展開することもできます。 次に、レポートを使用して、Configuration Managerでクライアント PKI 証明書を使用できるコンピューターの数を表示します。

    注:

    Configuration Manager クライアントをインストールすると、フォルダーにCMHttpsReadiness.exe ツールが%windir%\CCMインストールされます。 このツールを実行すると、次のコマンド ライン オプションを使用できます。

    • /Store:<Certificate store name>: このオプションは CCMCERTSTORE client.msi プロパティと同じです。/Issuers:<Case-sensitive issuer common name>このオプションは CCMCERTISSUERS client.msi プロパティと同じです
    • /Criteria:<Selection criteria>: このオプションは CCMCERTSEL client.msi プロパティと同じです
    • /SelectFirstCert: このオプションは CCMFIRSTCERT client.msi プロパティと同じです

    このツールは、ディレクトリ内の CMHttpsReadiness.log に情報を CCM\Logs 出力します。

    詳細については、「 クライアント インストールのプロパティについて」を参照してください。

  7. 十分なクライアントが HTTP 経由の認証にクライアント PKI 証明書を正常に使用していると確信できる場合は、次の手順に従います。

    1. サイトの別の管理ポイントを実行するメンバー サーバーに PKI Web サーバー証明書を展開し、IIS でその証明書を構成します。 詳細については、「 IIS を実行するサイト システムの Web サーバー証明書を展開する」を参照してください。

    2. このサーバーに管理ポイントの役割をインストールします。 HTTPS の管理ポイント プロパティで [クライアント接続] オプションを構成します。

  8. PKI 証明書を持つクライアントが HTTPS を使用して新しい管理ポイントを使用することを監視し、確認します。 IIS ログまたはパフォーマンス カウンターを使用して検証できます。

  9. HTTPS クライアント接続を使用するように他のサイト システムの役割を再構成します。 インターネット上のクライアントを管理する場合は、サイト システムにインターネット FQDN があることを確認します。 インターネットからのクライアント接続を受け入れるように、個々の管理ポイントと配布ポイントを構成します。

    重要

    インターネットからの接続を受け入れるようにサイト システムの役割を設定する前に、インターネット ベースのクライアント管理の計画情報と前提条件を確認してください。 詳細については、「 エンドポイント間の通信」を参照してください。

  10. クライアントと IIS を実行するサイト システムの PKI 証明書ロールアウトを拡張します。 必要に応じて、HTTPS クライアント接続とインターネット接続のサイト システムの役割を設定します。

  11. 最高のセキュリティ: すべてのクライアントが認証と暗号化にクライアント PKI 証明書を使用していることを確信している場合は、サイトのプロパティを HTTPS のみを使用するように変更します。

次の手順