Metode IX509CertificateRequestPkcs10::InitializeFromPublicKey (certenroll.h)

Metode InitializeFromPublicKey menginisialisasi permintaan sertifikat yang ditandatangani null dengan menggunakan objek IX509PublicKey dan, secara opsional, templat.

Sintaks

HRESULT InitializeFromPublicKey(
  [in]           X509CertificateEnrollmentContext Context,
  [in]           IX509PublicKey                   *pPublicKey,
  [in, optional] BSTR                             strTemplateName
);

Parameter

[in] Context

Nilai enumerasi X509CertificateEnrollmentContext yang menentukan apakah sertifikat yang diminta ditujukan untuk pengguna akhir, komputer, atau administrator yang bertindak atas nama komputer.

[in] pPublicKey

Penunjuk ke antarmuka IX509PublicKey yang mewakili kunci umum.

[in, optional] strTemplateName

Variabel BSTR yang berisi Nama Umum (CN) templat seperti yang muncul di Direktori Aktif atau pengidentifikasi objek desimal putus-putus. Ini adalah parameter opsional.

Nilai kembali

Jika fungsi berhasil, fungsi akan mengembalikan S_OK.

Jika fungsi gagal, fungsi mengembalikan nilai HRESULT yang menunjukkan kesalahan. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut. Untuk daftar kode kesalahan umum, lihat Nilai HRESULT Umum.

Mengembalikan kode/nilai Deskripsi
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
Objek permintaan sertifikat telah diinisialisasi.

Keterangan

Jika Anda menentukan templat, metode InitializeFromPublicKey melakukan tindakan berikut:

  • Menambahkan ekstensi yang ditentukan dalam templat opsional, jika ada, ke koleksi IX509Extensions .
  • Membuat koleksi CriticalExtensions dan mengisinya dengan pengidentifikasi objek XCN_OID_KEY_USAGE dan XCN_OID_BASIC_CONSTRAINTS2 default. Jika templat ditentukan dan menunjukkan bahwa OID ini tidak penting, templat tersebut dihapus dari koleksi. OID yang ditandai penting oleh templat, jika ada, ditambahkan.
  • Mengatur properti SmimeCapabilities jika templat mendukung algoritma simetris.
  • Mengatur properti AlternateSignatureAlgorithm jika templat memerlukan OID algoritma tanda tangan diskrit.
  • Membuat objek IX509SignatureInformation .
  • Membuat algoritma hash OID jika algoritma ditentukan dalam templat dan mengaturnya pada objek IX509SignatureInformation .
  • Membuat algoritma enkripsi asimetris OID jika algoritma ditentukan dalam templat dan mengaturnya pada objek IX509SignatureInformation .

Apakah Anda menentukan templat atau tidak, jika properti CSPInformations tidak ditentukan, metode membuat koleksi ICspInformations dari penyedia yang diinstal di komputer.

Metode ini tidak membuat kunci privat. Penggunaan metode ini menyiratkan bahwa permintaan ditandatangani null. Oleh karena itu, metode menetapkan properti NullSigned pada objek IX509SignatureInformation .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header certenroll.h
DLL CertEnroll.dll

Lihat juga

IX509CertificateRequestPkcs10