次の方法で共有


セキュリティで保護された LDAP 証明書にサブジェクトの別名を追加する

この記事では、セキュリティで保護されたライトウェイト ディレクトリ アクセス プロトコル (LDAP) 証明書にサブジェクトの別名 (SAN) を追加する方法について説明します。

元の KB 番号: 931351

まとめ

LDAP 証明書は、Windows Server 2003 ベースのコンピューターで構成されている証明機関 (CA) に送信されます。 SAN を使用すると、コンピューター名以外のドメイン ネーム システム (DNS) 名を使用してドメイン コントローラーに接続できます。 この記事では、エンタープライズ CA、スタンドアロン CA、またはサード パーティ CA に送信される認定要求に SAN 属性を追加する方法について説明します。

この記事では、次のアクションを実行する方法についても説明します。

  • 証明書要求から SAN 属性を受け入れるように CA を構成します。
  • 証明書要求を作成してエンタープライズ CA に送信します。
  • 証明書要求を作成し、スタンドアロン CA に送信します。
  • Certreq.exe ツールを使用して証明書要求を作成します。
  • サード パーティ CA に証明書要求を作成して送信します。

証明書要求を作成して送信する

エンタープライズ CA に証明書要求を送信する場合、Active Directory ディレクトリ サービスからの情報を使用する代わりに、要求で SAN を使用するように証明書テンプレートを構成する必要があります。 バージョン 1 Web サーバー テンプレートを使用して、Secure Sockets Layer (SSL) 経由で LDAP をサポートする証明書を要求できます。 バージョン 2 のテンプレートは、証明書要求または Active Directory から SAN を取得するように構成できます。 バージョン 2 テンプレートに基づく証明書を発行するには、Windows Server 2003 Enterprise Edition を実行しているコンピューターでエンタープライズ CA が実行されている必要があります。

スタンドアロン CA に要求を送信する場合、証明書テンプレートは使用されません。 そのため、SAN は常に証明書要求に含まれている必要があります。 SAN 属性は、Certreq.exe プログラムを使用して作成された要求に追加できます。 または、WEB 登録ページを使用して送信される要求に SAN 属性を含めることができます。

Web 登録ページを使用してエンタープライズ CA に証明書要求を送信する

SAN を含む証明書要求をエンタープライズ CA に送信するには、次の手順に従います。

  1. Internet Explorer を開きます。

  2. Internet Explorer で、 http://<servername>/certsrvに接続します。

    Note

    プレースホルダー <servername> は、Windows Server 2003 を実行しており、アクセスする CA を持つ Web サーバーの名前を表します。

  3. 証明書の要求をクリックします。

  4. [ 証明書の要求の詳細設定] をクリックします。

  5. [ 作成] をクリックし、この CA に要求を送信

  6. Certificate テンプレート一覧で、[Web サーバー] をクリック

    Note

    WEB サーバー証明書を発行するように CA を構成する必要があります。 CA が Web サーバー証明書を発行するようにまだ構成されていない場合は、証明機関スナップインの証明書テンプレート フォルダーに Web サーバー テンプレートを追加する必要がある場合があります。

  7. 必要に応じて識別情報を提供します。

  8. [ ボックスに、ドメイン コントローラーの完全修飾ドメイン名を入力します。

  9. Key オプションで、次のオプションを設定します。

    • 新しいキー セットを作成する
    • CSP: Microsoft RSA SChannel 暗号化プロバイダー
    • キー使用法: Exchange
    • キー サイズ: 1024 - 16384
    • 自動キー コンテナー名
    • ローカル コンピューターの証明書ストアに証明書を格納する
  10. Advanced オプションで、要求形式を CMC に設定します。

  11. [ Attributes ボックスに、目的の SAN 属性を入力します。 SAN 属性の形式は次のとおりです。

    san:dns=dns.name[&dns=dns.name]

    複数の DNS 名はアンパサンド (&) で区切ります。 たとえば、ドメイン コントローラーの名前が corpdc1.fabrikam.com され、エイリアスが ldap.fabrikam.comされている場合は、両方の名前を SAN 属性に含める必要があります。 結果の属性文字列は次のように表示されます。

    san:dns=corpdc1.fabrikam.com&dns=ldap.fabrikam.com

  12. 送信 をクリックします。

  13. Certificate Issued Web ページが表示された場合は、[この証明書のインストール]をクリック

Web 登録ページを使用してスタンドアロン CA に証明書要求を送信する

SAN を含む証明書要求をスタンドアロン CA に送信するには、次の手順に従います。

  1. Internet Explorer を開きます。

  2. Internet Explorer で、 http://<servername>/certsrvに接続します。

    Note

    プレースホルダー <servername> は、Windows Server 2012 R2 を実行しており、アクセスする CA を持つ Web サーバーの名前を表します。

  3. 証明書の要求をクリックします。

  4. [ 証明書の要求の詳細設定] をクリックします。

  5. [ 作成] をクリックし、この CA に要求を送信

  6. 必要に応じて識別情報を提供します。

  7. [ ボックスに、ドメイン コントローラーの完全修飾ドメイン名を入力します。

  8. [証明書が必要なサーバーの の種類 一覧で、 Server 認証証明書をクリックします。

  9. Key オプションで、次のオプションを設定します。

    • 新しいキー セットを作成する
    • CSP: Microsoft RSA SChannel 暗号化プロバイダー
    • キー使用法: Exchange
    • キー サイズ: 1024 - 16384
    • 自動キー コンテナー名
    • ローカル コンピューターの証明書ストアに証明書を格納する
  10. Advanced オプションで、要求の形式を CMC に設定します。

  11. [ Attributes ボックスに、目的の SAN 属性を入力します。 SAN 属性の形式は次のとおりです。

    san:dns=dns.name[&dns=dns.name]

    複数の DNS 名はアンパサンド (&) で区切ります。 たとえば、ドメイン コントローラーの名前が corpdc1.fabrikam.com され、エイリアスが ldap.fabrikam.com 場合、両方の名前を SAN 属性に含める必要があります。 結果の属性文字列は次のように表示されます。

    san:dns=corpdc1.fabrikam.com&dns=ldap.fabrikam.com

  12. 送信 をクリックします。

  13. 証明書を自動的に発行するように CA が構成されていない場合は、 Certificate Pending Web ページが表示され、管理者が要求された証明書を発行するのを待つよう要求されます。

    管理者が発行した証明書を取得するには、 http://<servername>/certsrvに接続し、[保留中の証明書 チェック] をクリック。 要求された証明書をクリックし、 Nextをクリックします。

    証明書が発行された場合は、 Certificate Issued Web ページが表示されます。 [この証明書のインストール をクリックして 証明書をインストールします。

Certreq.exeを使用して、SAN を含む証明書要求を作成して送信する

Certreq.exe ユーティリティを使用して証明書要求を作成して送信するには、次の手順に従います。

  1. 証明書要求の設定を指定する .inf ファイルを作成します。 .inf ファイルを作成するには、「 Creating a RequestPolicy.inf file 」セクションの「 カスタム サブジェクトの別名を使用して証明書を要求する方法のサンプル コードを使用できます。

    SAN は、 [拡張機能] セクションに含めることができます。 例については、サンプルの .inf ファイルを参照してください。

  2. ファイルを Request.inf として保存します。

  3. コマンド プロンプトを開きます。

  4. コマンド プロンプトで、次のコマンドを入力して Enter キーを押します。

    certreq -new request.inf certnew.req
    

    このコマンドは、Request.inf ファイル内の情報を使用して、.inf ファイルの RequestType 値で指定された形式で要求を作成します。 要求が作成されると、公開キーと秘密キーのペアが自動的に生成され、ローカル コンピューターの登録要求ストアの要求オブジェクトに格納されます。

  5. コマンド プロンプトで、次のコマンドを入力して Enter キーを押します。

    certreq -submit certnew.req certnew.cer
    

    このコマンドは、CA に証明書要求を送信します。 環境内に複数の CA がある場合は、コマンド ラインで -config スイッチを使用して、要求を特定の CA に転送できます。 -config スイッチを使用しない場合は、要求を送信する CA を選択するように求められます。

    -config スイッチは、次の形式を使用して特定の CA を参照します。

    computername\Certification Authority Name

    たとえば、CA 名が企業ポリシー CA1 であり、ドメイン名が corpca1.fabrikam.comされているとします。 certreq コマンドを -config スイッチと共に使用してこの CA を指定するには、次のコマンドを入力します。

    certreq -submit -config "corpca1.fabrikam.com\Corporate Policy CA1" certnew.req certnew.cer
    

    この CA がエンタープライズ CA であり、証明書要求を送信するユーザーがテンプレートの読み取りと登録のアクセス許可を持っている場合、要求が送信されます。 発行された証明書は、Certnew.cer ファイルに保存されます。 CA がスタンドアロン CA の場合、CA 管理者によって承認されるまで、証明書要求は保留中の状態になります。 certreq -submit コマンドからの出力には、送信された要求の要求 ID 番号が含まれています。 証明書が承認されるとすぐに、要求 ID 番号を使用して証明書を取得できます。

  6. 次のコマンドを実行して、要求 ID 番号を使用して証明書を取得します。

    certreq -retrieve RequestID certnew.cer
    

    ここで -config スイッチを使用して、特定の CA から証明書要求を取得することもできます。 -config スイッチが使用されていない場合は、証明書を取得する CA を選択するように求められます。

  7. コマンド プロンプトで、次のコマンドを入力して Enter キーを押します。

    certreq -accept certnew.cer
    

    証明書を取得したら、それをインストールする必要があります。 このコマンドは、証明書を適切なストアにインポートし、手順 4 で作成した秘密キーに証明書をリンクします。

サード パーティ CA に証明書要求を送信する

サード パーティ CA に証明書要求を送信する場合は、まず Certreq.exe ツールを使用して証明書要求ファイルを作成します。 その後、そのベンダーに適した方法を使用して、サード パーティ CA に要求を送信できます。 サード パーティ CA は、CMC 形式で証明書要求を処理できる必要があります。

Note

ほとんどのベンダーは、証明書要求を証明書署名要求 (CSR) と見なします。

関連情報

サードパーティの証明機関と共に SSL 経由で LDAP を有効にする方法の詳細については、「 サードパーティの証明機関で SSL 経由の LDAP を有効にする方法を参照してください。

カスタム サブジェクトの別名を持つ証明書を要求する方法の詳細については、「 カスタム サブジェクトの別名を持つ証明書を要求する方法を参照してください。

certutil タスクを使用して証明機関 (CA) を管理する方法の詳細については、次の Microsoft Developer Network (MSDN) Web サイトを参照してください。 証明機関 (CA) を管理するためのCertutil タスク