Metode ICertServerPolicy::SetCertificateExtension (certif.h)

Metode SetCertificateExtension menambahkan ekstensi baru ke sertifikat.

Sintaks

HRESULT SetCertificateExtension(
  [in] const BSTR    strExtensionName,
  [in] LONG          Type,
  [in] LONG          ExtFlags,
  [in] const VARIANT *pvarValue
);

Parameter

[in] strExtensionName

Menentukan pengidentifikasi objek (OID) untuk ekstensi yang akan diatur. Panjang string harus 31 karakter nonnull atau kurang.

[in] Type

Menentukan jenis ekstensi yang sedang disetel. Parameter Jenis harus setuju dengan jenis data pvarValue yang diatur dalam bidang vt dari struktur VARIAN . Parameter Jenis dapat diatur ke salah satu jenis berikut.

Nilai Makna
PROPTYPE_LONG
Data panjang yang ditandatangani.
PROPTYPE_DATE
Tanggal/waktu.
PROPTYPE_BINARY
Nilai ekstensi diatur apa adanya dan diasumsikan sebagai ASN.1 yang dikodekan jika perlu.
PROPTYPE_STRING
Nilai ekstensi akan dikodekan ASN.1 sebagai string IA5 sebelum ditempatkan dalam sertifikat baru.
Catatan Anda harus menggunakan PROPTYPE_STRING untuk nilai ekstensi yang terdiri dari satu URL hanya jika Anda ingin URL dikodekan secara otomatis sebagai string IA5. Jika tidak, kodekan URL sebagai string IA5 sendiri dan teruskan nilai yang dikodekan sebagai PROPTYPE_BINARY.
 

[in] ExtFlags

Menentukan bendera untuk ekstensi yang sedang diatur. Gunakan nilai nol jika tidak ada bendera yang akan diatur, atau gunakan salah satu nilai bendera berikut. Anda dapat menggabungkan bendera ini bersama-sama dengan menggunakan operator OR , dan Anda juga dapat menggabungkannya dengan menggunakan operator OR dengan bendera ekstensi privat kebijakan (8 bit tinggi dari bidang EXTENSION_POLICY_MASK).

Catatan Ketika ExtFlags diatur ke EXTENSION_DISABLE_FLAG, ekstensi akan dinonaktifkan di log server dan tidak akan ditambahkan ke sertifikat.
 
Nilai Makna
EXTENSION_CRITICAL_FLAG
Ini adalah ekstensi penting.
EXTENSION_DISABLE_FLAG
Ekstensi tidak akan digunakan.

[in] pvarValue

Menentukan nilai yang terkait dengan ekstensi. Perhatikan jenis VARIAN nilai harus setuju dengan parameter Jenis , seperti yang ditunjukkan dalam tabel berikut.

Nilai Makna
PROPTYPE_LONG
VT_I4
PROPTYPE_DATE
VT_DATE
PROPTYPE_BINARY
VT_BSTR
PROPTYPE_STRING
VT_BSTR

Mengembalikan nilai

VB

Jika metode berhasil, metode mengembalikan S_OK.

Jika metode gagal, metode mengembalikan nilai HRESULT yang menunjukkan kesalahan. Untuk daftar kode kesalahan umum, lihat Nilai HRESULT Umum.

Keterangan

Gunakan ekstensi untuk menyertakan informasi tambahan dengan sertifikat, seperti subjek tambahan atau informasi penggunaan. Untuk informasi selengkapnya, lihat Handler Ekstensi.

Panggil metode SetCertificateExtension dari implementasi metode ICertPolicy2::VerifyRequest Anda. Anda harus memanggil metode ICertServerPolicy::SetContext sebelum memanggil metode SetCertificateExtension .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tidak ada yang didukung
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header certif.h (termasuk Certsrv.h)
Pustaka Certidl.lib
DLL Certcli.dll

Lihat juga

ICertServerPolicy

ICertServerPolicy::SetContext