次の方法で共有


ユーザーが CA Web 登録ページから証明書を要求した場合のエラー: 証明書テンプレートが見つかりませんでした

この記事では、CA Web 登録ページから証明書を要求するときに発生する "証明書テンプレートが見つかりませんでした" というエラーを解決するためのヘルプを提供します。

適用対象: Windows Server (サポートされているすべてのバージョン)
元の KB 番号: 811418

現象

ユーザーが証明機関 (CA) Web 登録ページから証明書を要求しようとすると、次のエラー メッセージが表示されることがあります。

証明書テンプレートが見つかりませんでした。 この CA に証明書を要求するアクセス許可がない、または Active Directory へのアクセス中にエラーが発生しました。

この動作は、Web 登録ページがエンタープライズ CA サーバー上の Active Directory ドメインにある場合に発生します。 Web 登録ページが同じサーバー上にあるか、別のメンバー サーバー上にあるかに関係なく発生します。

原因

CA Web 登録ページでは、大文字と小文字が区別される 2 つの値の文字列比較が実行されます。 1 つの値は、証明書サーバーの%systemroot%\System32\Certsrv フォルダーにある Certdat.inc ファイルの sServerConfig 値で、もう 1 つの値は Active Directory の pkiEnrollmentService オブジェクトの dnsHostName 属性です。 大文字と小文字の一致を含め、2 つの文字列が一致しない場合、登録は失敗します。

解決方法

この動作を修正するには、次の手順に従います。

  1. pkiEnrollmentService オブジェクトの Active Directory dNSHostName 属性を表示します。 このオブジェクトは次の場所にあります。

    CN= CertificateServer,CN=Enrollment Services,CN=Public Key Services,CN=Services,CN=Configuration,DC= MyDomain,DC=com

    dNSHostName 属性を表示するには、ADSIEdit.msc または LDP.exe を使用します。

  2. sServerConfig の値が dNSHostName 属性の値の後に証明機関名が続く値と同じになるように、Certdat.inc ファイルを編集します。

    Note

    sServerConfig 値は、dNSHostName 属性と同じ大文字と小文字を区別する必要があります。 これが true でない場合は、引き続き同じエラーが発生します。

  3. たとえば、証明機関の DNS ホスト名が server1.domain.local である場合証明機関の名前は MYCA です 次に、証明機関の %systemroot%\system32\certsrv フォルダーにある CN=MYCA,CN=Enrollment Services,CN=Public Key Services,CN=Services,CN=Configuration,DC=Domain,DC=local オブジェクトの dNSHostName 属性が server1.domain.local に設定され、sServerConfig が証明機関の server1.domain.local\MYCA に設定されていることを確認します

  4. 証明書を要求するユーザーに Internet Explorer を再起動させます。 これにより、新しい資格情報を CA に渡すことができます。

    Note

    また、ユーザーが要求している証明書テンプレートに対する読み取りと登録のアクセス許可がユーザーに付与されていることを確認します。 これらのアクセス許可は、ADSIEdit スナップインまたは証明書テンプレート スナップインを使用して付与できます。