IX509Enrollment2::InstallResponse2 メソッド (certenroll.h)
InstallResponse2 メソッドは、エンド エンティティ コンピューターに証明書チェーンをインストールします。 応答を含むバイト配列は、抽象構文表記法 1 (ASN.1) 標準で定義されているDistinguished Encoding Rules (DER) を使用してエンコードされます。 DER でエンコードされたバイト配列は、純粋なバイナリ シーケンスまたは Unicode でエンコードされた文字列で指定する必要があります。 このメソッドは Web 対応です。
構文
HRESULT InstallResponse2(
[in] InstallResponseRestrictionFlags Restrictions,
[in] BSTR strResponse,
[in] EncodingType Encoding,
[in, optional] BSTR strPassword,
[in] BSTR strEnrollmentPolicyServerUrl,
[in] BSTR strEnrollmentPolicyServerID,
[in] PolicyServerUrlFlags EnrollmentPolicyServerFlags,
[in] X509EnrollmentAuthFlags authFlags
);
パラメーター
[in] Restrictions
インストールできる証明書の種類を指定する InstallResponseRestrictionFlags 列挙値。 次の値のうち 1 つ以上を指定できます。
値 | 意味 |
---|---|
|
信頼されていない証明書や、対応する要求がない証明書はインストールしないでください。 |
|
ダミー証明書からではなく、証明書の応答から 秘密キー を作成します。 これにより、ダミー証明書が省略可能になります。 この値が設定されていない場合は、ダミー証明書が存在する必要があり、そこから秘密キーが抽出されます。 |
|
信頼されていないエンド エンティティと 証明機関の証明書を インストールします。 証明機関の証明書には、ルート CA 証明書と下位 CA 証明書が含まれます。 エンド エンティティ証明書は個人用ストアにインストールされ、CA 証明書は証明機関ストアにインストールされます。 |
|
AllowUntrustedCertificate フラグと同じアクションを実行しますが、ルートが信頼されていないために証明書チェーンを構築できない場合でも、証明書をインストールします。 メモ Windows Vista では、このフラグの動作は AllowUntrustedCertificate フラグに定義されている動作と同じです。 SP1 を使用した Windows Vista 以降では、信頼されていないルートをインストールできます。
|
[in] strResponse
DER でエンコードされた応答を含む BSTR 変数。
[in] Encoding
DER でエンコードされた応答を含む文字列に適用されるエンコードの種類を指定する EncodingType 列挙値。
[in, optional] strPassword
証明書のインストール用の省略可能なパスワード。 パスワードが使用されていないことを示す NULL を 指定できます。 パスワードの使用が完了したら、 SecureZeroMemory 関数を呼び出してメモリから消去します。 パスワードの保護の詳細については、「パスワードの 処理」を参照してください。
[in] strEnrollmentPolicyServerUrl
証明書登録ポリシー (CEP) サーバーの URL を含む BSTR 。
[in] strEnrollmentPolicyServerID
CEP サーバーの識別子を含む BSTR 。
[in] EnrollmentPolicyServerFlags
PolicyServerUrlFlags 列挙値。 次のいずれかの値を指定できます。
[in] authFlags
クライアント認証の種類を指定する X509EnrollmentAuthFlags 列挙値。 Windows 7 の場合、 X509AuthCertificate のみを次の値から選択できます。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通 HRESULT 値」を参照してください。
リターン コード | 説明 |
---|---|
|
このメソッドは Web から呼び出され、 AllowNoOutstandingRequest または AllowUntrustedCertificate が Restrictions パラメーターで指定されました。 |
|
パスワードを含む文字列の長さが 64 キロバイトを超えています。 |
|
登録オブジェクトが初期化されていません。 |
注釈
InstallResponse2 メソッド:
- 外部ストアからダミー証明書を取得します。
- 応答に含まれる証明書を取得し、コンピューターにインストールします。
- 外部ストアのダミー証明書から、個人用ストアに新しくインストールされた証明書にプロパティをコピーします。
InstallResponse2 メソッドを呼び出す前に、次のいずれかのメソッドを呼び出して IX509Enrollment オブジェクトを初期化する必要があります。
Web からこのメソッドを呼び出す場合は、Restrictions パラメーターに AllowNone または AllowUntrustedRoot のみを指定できます。 AllowNoOutstandingRequest または AllowUntrustedCertificate を指定した場合、メソッドはE_ACCESSDENIED エラーを返します。
最後の 4 つのパラメーター (strEnrollmentPolicyServerUrl、 strEnrollmentPolicyServerID、 EnrollmentPolicyServerFlags、 および authFlags) は 、InstallResponse メソッドには含まれません。 ICertPropertyEnrollmentPolicyServer インターフェイスとほとんど同じ方法で、インストールされている証明書にプロパティ値を追加できます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |