Share via


証明書応答関数

CertEnroll.dll IX509Enrollment インターフェイスを実装してクライアント証明書要求を送信し、 証明機関 (CA) からの応答をインストールします。

登録プロセスでは、次の 3 つのシナリオに対応できます。

帯域外登録
  1. IX509Enrollment オブジェクトによって実装された初期化メソッドを呼び出します。
  2. CreateRequest メソッドを呼び出して要求を取得します。
  3. (手動で、または他のプロセスを使用して) 帯域外で要求を送信します。
  4. CA から応答を受信します。
  5. InstallResponse メソッドを呼び出します。

自動登録

  1. IX509Enrollment オブジェクトによって実装された初期化メソッドを呼び出します。
  2. Enroll メソッドを呼び出します。

登録の遅延

  1. IX509Enrollment オブジェクトによって実装された初期化メソッドを呼び出します。
  2. CreateRequest メソッドを呼び出して要求を取得します。
  3. 要求を送信する準備ができるまで保存します。
  4. 登録する準備ができたら、 Initialize メソッドを呼び出して登録オブジェクトを再初期化します。
  5. CA が証明書を返すときに InstallResponse メソッドを呼び出します。

登録プロセス中に、IX509Enrollment オブジェクトの Status プロパティを呼び出して、登録が成功したか、保留中か、スキップされたか、エラーが生成されたか、拒否されたかを識別する EnrollmentEnrollStatus 列挙値を取得できます。

次の各セクションでは、CA からの証明書応答をインストールするXenroll.dllによってエクスポートされた関数を識別します。 各セクションでは、CertEnroll.dllを使用して関数を置き換える方法、または 2 つのライブラリ間にマッピングが存在しないことを示す方法についても説明します。

acceptFilePKCS7WStr

Xenroll.dll の acceptFilePKCS7WStr 関数は、ファイルから PKCS #7 応答をインストールします。

CertEnroll.dll ライブラリは、ファイルからの PKCS #7 証明書応答をインストールする機能を直接実装していません。 ただし、ファイル データをバイト配列に読み取り、 InstallResponse を呼び出して応答をインストールするカスタム関数を作成できます。

InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに証明書をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

acceptFileResponseWStr

Xenroll.dllの acceptFileResponseWStr 関数は、ファイルから PKCS #7 または CMC 証明書応答をインストールします。

CertEnroll.dll ライブラリは、ファイルからの証明書応答をインストールする機能を直接実装していません。 ただし、ファイル データをバイト配列に読み取り、 InstallResponse を呼び出して PKCS #7 または CMC 応答をインストールするカスタム関数を作成できます。

InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに証明書をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

acceptPKCS7Blob

Xenroll.dll の acceptPKCS7Blob 関数は、バイト配列に含まれる PKCS #7 応答をインストールします。

InstallResponse を呼び出して、PKCS #7 メッセージをインストールできます。 InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに PKCS #7 応答をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

acceptResponseBlob

Xenroll.dllの acceptResponseBlob 関数は、バイト配列に含まれる PKCS #7 または CMC 証明書応答をインストールします。

InstallResponse を呼び出して、PKCS #7 または CMC 応答をインストールできます。 InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに応答をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

getCertContextFromFileResponseWStr

Xenroll.dllの getCertContextFromFileResponseWStr 関数は、ファイルからクライアント証明書を取得します。

CertEnroll.dll ライブラリは、ファイルに保存されている CA 応答から証明書を取得する機能を直接実装していません。 ただし、ファイル データをバイト配列に読み込むカスタム関数を作成し、 InstallResponse を呼び出して PKCS #7 または CMC 応答をインストールし、 Certificate プロパティを呼び出して証明書を取得できます。

InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに証明書をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

getCertContextFromPKCS7

Xenroll.dll の getCertContextFromPKCS7 関数は、PKCS #7 応答からクライアント証明書を取得します。

IX509Enrollment オブジェクトの Certificate プロパティを呼び出して、Enroll メソッドまたは InstallResponse メソッドを呼び出した後で証明書を取得できます。

getCertContextFromResponseBlob

Xenroll.dllの getCertContextFromResponseBlob 関数は、PKCS #7 または CMC 応答からクライアント証明書を取得します。

IX509Enrollment オブジェクトの Certificate プロパティを呼び出して、Enroll メソッドまたは InstallResponse メソッドを呼び出した後で証明書を取得できます。

InstallPKCS7Blob

Xenroll.dll の InstallPKCS7Blob 関数は、PKCS #7 応答をインストールします。

InstallResponse を呼び出して、PKCS #7 または CMC 応答をインストールできます。 InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに応答をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

InstallPKCS7BlobEx

Xenroll.dll の InstallPKCS7BlobEx 関数は、PKCS #7 応答をインストールし、インストールされている証明書の数を返します。

InstallResponse を呼び出して、PKCS #7 または CMC 応答をインストールできます。 InstallResponse の最初のパラメーターに InstallResponseRestrictionFlags 列挙の AllowNoOutstandingRequest 値を指定した場合は、ダミー証明書が存在する必要はありません。これにより、最初に Enroll または CreateRequest を呼び出さずに応答をインストールできます。 ただし、Web スクリプトを使用して証明書をインストールする場合は、ダミー証明書が要求ストアに存在する必要があります。 したがって、最初のパラメーターに AllowNone を指定する必要があります。

SPCFileNameWStr

Xenroll.dll の SPCFileNameWStr 関数は、証明書の応答を保存するファイルの名前を指定または取得します。 CertEnroll.dll ライブラリには、証明書を特定のファイルにコピーできる機能は実装されていません。 登録プロセスでは、証明書チェーンが適切なストア内のファイルに自動的にインストールされます。

WriteCertToCSP

Xenroll.dllの WriteCertToCSP 関数は、 証明書を暗号化サービス プロバイダー (CSP) に書き込む必要があるかどうかを示すブール値を指定または取得します。 通常、この関数が呼び出される場合、プロバイダーはスマート カードです。

CertEnroll.dllでは、クライアントが Enroll メソッドを呼び出してスマート カード証明書の要求を送信し、証明書が発行されると、Enroll は、カードがリーダーにインストールされていることを前提として、スマート カードに証明書を自動的にインストールします。 また、InstallResponse メソッドは、スマート カードに証明書を自動的に書き込みます。

WriteCertToUserDS

Xenroll.dllの WriteCertToUserDS 関数は、証明書を Active Directory ストアに保存するかどうかを示すブール値を指定または取得します。 CertEnroll.dll ライブラリには、証明書のコピー先のストアを指定できる機能は実装されていません。

Xenroll.dllをCertEnroll.dllにマッピングする

IX509Enrollment