IX509CertificateRequestPkcs7::InitializeFromTemplateName メソッド (certenroll.h)
InitializeFromTemplateName メソッドは、テンプレートを使用して証明書要求を初期化します。
構文
HRESULT InitializeFromTemplateName(
[in] X509CertificateEnrollmentContext Context,
[in] BSTR strTemplateName
);
パラメーター
[in] Context
要求された証明書がエンド ユーザー、コンピューター、またはコンピューターの代わりに動作する管理者を対象としているかどうかを指定する X509CertificateEnrollmentContext 列挙値。
[in] strTemplateName
Active Directory に表示されるテンプレートの共通名 (CN) またはドット付き 10 進オブジェクト識別子を含む BSTR 変数。
戻り値
関数が成功した場合、関数は S_OKを返します。
関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。
リターン コード/値 | Description |
---|---|
|
証明書要求オブジェクトは既に初期化されています。 |
注釈
InitializeFromTemplateName メソッドは PKCS #7 要求オブジェクトを作成し、このメソッドが呼び出される前に存在していた値に次のプロパティを設定します。
メソッドは、次のコレクションを作成します。- ICryptAttributes コレクション。
- IX509Extensions コレクション。
- 既定のXCN_OID_KEY_USAGEとXCN_OID_BASIC_CONSTRAINTS2 オブジェクト識別子が設定された IObjectIds コレクション。
- 新しい要求から抑制される属性と拡張 OID の空の IObjectIds コレクション。
次に、 メソッドはテンプレートを調べて、次のアクションを実行します。
- テンプレートで指定された拡張機能を IX509Extensions コレクションに追加します 。
- 既定の重要な拡張機能 (XCN_OID_KEY_USAGEとXCN_OID_BASIC_CONSTRAINTS2) をコレクションから削除します(テンプレートがクリティカルではないことが示されている場合)。 テンプレートによってクリティカルとマークされた OID が追加されます。
- テンプレートが対称アルゴリズムをサポートしている場合 は、SmimeCapabilities プロパティを設定します。
- テンプレートに個別署名アルゴリズム OID が必要な場合 は、AlternateSignatureAlgorithm プロパティを設定します。
- IX509SignatureInformation オブジェクトを作成します。
- アルゴリズムがテンプレートで指定され、 IX509SignatureInformation オブジェクトに設定されている場合は、ハッシュ アルゴリズム OID を作成します。
- テンプレートでアルゴリズムが指定され、 IX509SignatureInformation オブジェクトに設定されている場合は、非対称暗号化アルゴリズム OID を作成します。
- テンプレート設定から次の IX509PrivateKey プロパティを設定します。
CSPInformations プロパティが NULL の場合、メソッドはコンピューターにインストールされているプロバイダーから ICspInformations コレクションを作成します。
最後に、 メソッドは初期化された PKCS #10 要求を内部要求オブジェクトとして設定します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | certenroll.h |
[DLL] | CertEnroll.dll |