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