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

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

適用対象:  Windows Server 2012R2
元の KB 番号:   931351

概要

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

この記事では、次の操作を実行する方法も説明します。

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

証明書要求の作成と送信

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

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

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

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

  1. Internet Explorer を開きます。

  2. [Internet Explorer] に接続します http://<servername>/certsrv

    注意

    プレースホルダーは、サーバー 2003 で実行され、Windowsする CA を持つ Web サーバーの <servername> 名前を表します。

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

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

  5. [この CA への要求を作成し送信する] をクリックします。

  6. [証明書テンプレート ] ボックスの一覧、[Web サーバー] をクリックします

    注意

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

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

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

  9. [ キー オプション] で、次のオプションを設定します。

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

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

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

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

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

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

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

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

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

  1. Internet Explorer を開きます。

  2. [Internet Explorer] に接続します http://<servername>/certsrv

    注意

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

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

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

  5. [この CA への要求を作成し送信する] をクリックします。

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

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

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

  9. [ キー オプション] で、次のオプションを設定します。

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

  11. [属性 ] ボックス に、目的の 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 が証明書を自動的に発行するように構成されていない場合、証明書保留中の Web ページが表示され、管理者が要求された証明書を発行するのを待つという要求が表示されます。

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

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

SAN Certreq.exe含む証明書要求を作成および送信するには、この証明書を使用します。

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

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

    [拡張機能] セクションには 、SANS を含 めることはできません。 例については、サンプルの .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 に送信できます。 スイッチを使用しない場合は、要求を送信する CA を選択 -config するように求めるメッセージが表示されます。

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

    computername\Certification Authority Name

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

    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 形式で証明書要求を処理できる必要があります。

注意

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

関連情報

サードパーティの証明機関と一緒に LDAP over SSL を有効にする方法の詳細については、「サードパーティの証明機関を使用して LDAP over SSL を有効にする方法」 を参照してください

カスタムサブジェクトの代替名を持つ証明書を要求する方法の詳細については、「How to Request a Certificate with a Custom Subject Alternative Name 」 を参照してください

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