IX509CertificateRequestPkcs10::InitializeFromTemplateName メソッド (certenroll.h)

InitializeFromTemplateName メソッドは、テンプレートを使用して証明書要求を初期化します。

構文

HRESULT InitializeFromTemplateName(
  [in] X509CertificateEnrollmentContext Context,
  [in] BSTR                             strTemplateName
);

パラメーター

[in] Context

要求された証明書が、コンピューターの代わりに動作するエンド ユーザー、コンピューター、または管理者を対象としているかどうかを示す X509CertificateEnrollmentContext 列挙値。

[in] strTemplateName

Active Directory またはドット 10 進オブジェクト識別子に表示されるテンプレートの共通名 (CN) を含む BSTR 変数。

戻り値

関数が成功した場合、関数は S_OKを返します。

関数が失敗した場合は、エラーを示す HRESULT 値を返します。 有効な値を次の表に示しますが、これ以外にもあります。 一般的なエラー コードの一覧については、「 一般的な HRESULT 値」を参照してください。

リターン コード/値 説明
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
証明書要求オブジェクトは既に初期化されています。

注釈

InitializeFromTemplateName メソッドは、次のコレクションを作成します。

  • 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 コレクションを作成します。

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー certenroll.h
[DLL] CertEnroll.dll

こちらもご覧ください

IX509CertificateRequestPkcs10