Antarmuka IX509Extension (certenroll.h)

Antarmuka IX509Extension dapat digunakan untuk menentukan ekstensi untuk permintaan sertifikat. Ekstensi sertifikat menyediakan informasi tentang penggunaan kunci, kebijakan dan batasan sertifikat, formulir nama alternatif, dan banyak lagi. Ekstensi terdiri dari pengidentifikasi objek (OID), nilai Boolean yang mengidentifikasi apakah ekstensi sangat penting, dan array byte yang berisi nilai ekstensi seperti yang ditunjukkan oleh sintaks Abstract Syntax Notation One (ASN.1) berikut.


Extension ::= SEQUENCE 
{
   extnId              OBJECT IDENTIFIER,
   critical            BOOLEAN DEFAULT FALSE,
   extnValue           OCTETSTRING
}

API Pendaftaran Sertifikat berisi antarmuka berikut, berasal dari IX509Extension, yang dapat Anda gunakan untuk membuat berbagai ekstensi yang paling umum digunakan dalam infrastruktur kunci publik (PKI) yang bergantung pada server sertifikat Windows.

Catatan Jangan gunakan antarmuka dasar IX509Extension untuk mewakili ekstensi apa pun yang dapat diwakili oleh salah satu antarmuka berikut. Perilaku pendaftaran tidak ditentukan jika antarmuka yang sesuai tidak digunakan.

 
Antarmuka Deskripsi
IX509ExtensionAlternativeNames Menentukan ekstensi AlternativeNames yang berisi satu atau beberapa formulir nama alternatif untuk subjek permintaan sertifikat.
IX509ExtensionAuthorityKeyIdentifier Menentukan ekstensi AuthorityKeyIdentifier yang memungkinkan identifikasi kunci publikotoritas sertifikasi yang sesuai dengan kunci privat otoritas sertifikasi yang menandatangani sertifikat yang diterbitkan. Ini digunakan oleh jalur sertifikat yang membangun perangkat lunak di server Windows untuk menemukan sertifikat otoritas sertifikasi.
IX509ExtensionBasicConstraints Mendefinisikan ekstensi BasicConstraints yang mengidentifikasi apakah entitas dapat digunakan sebagai otoritas sertifikasi dan, jika demikian, jumlah otoritas sertifikasi subordinat yang dapat ada di bawahnya dalam rantai sertifikat.
IX509ExtensionCertificatePolicies Menentukan ekstensi CertificatePolicies yang mengidentifikasi kebijakan di mana sertifikat telah diterbitkan dan tujuan penggunaannya.
IX509ExtensionEnhancedKeyUsage Menentukan ekstensi EnhancedKeyUsage yang mengidentifikasi satu atau beberapa penggunaan kunci publik yang terkandung dalam sertifikat.
IX509ExtensionKeyUsage Menentukan ekstensi KeyUsage yang membatasi operasi yang dapat dilakukan oleh kunci publik yang terkandung dalam sertifikat.
IX509ExtensionMSApplicationPolicies Menentukan ekstensi MSApplicationPolicies yang dapat digunakan oleh aplikasi untuk memfilter sertifikat berdasarkan penggunaan yang diizinkan. Penggunaan yang diizinkan diidentifikasi oleh pengidentifikasi objek (OID).
IX509ExtensionSmimeCapabilities Mendefinisikan ekstensi SmimeCapabilities yang mengidentifikasi kemampuan dekripsi penerima email sehingga pengirim email dapat memilih algoritma enkripsi paling aman yang didukung oleh kedua belah pihak.
IX509ExtensionSubjectKeyIdentifier Mendefinisikan ekstensi SubjectKeyIdentifier yang membedakan antara beberapa kunci publik yang dipegang oleh pemilik sertifikat. Nilai ekstensi biasanya merupakan hash SHA-1 dari kunci.
IX509ExtensionTemplate Menentukan ekstensi Templat yang mengidentifikasi templat versi 2 untuk digunakan saat menerbitkan atau memperbarui sertifikat.
IX509ExtensionTemplateName Menentukan ekstensi TemplateName yang mengidentifikasi templat versi 1 untuk digunakan saat menerbitkan atau memperbarui sertifikat.
 

Sebagian besar ekstensi yang dapat dibuat dengan menggunakan antarmuka sebelumnya ditentukan oleh standar sintaks versi 3 X.509 . Untuk membuat ekstensi versi 3 yang microsoftnya tidak menyediakan objek kustom, Anda dapat menggunakan antarmuka IX509Extension . Ekstensi ini diidentifikasi dalam tabel berikut.

Ekstensi/OID Deskripsi
AuthorityInformationAccess(XCN_OID_AUTHORITY_INFO_ACCESS) Mengidentifikasi cara mengakses informasi dan layanan otoritas sertifikasi. Nilai ekstensi berisi urutan URI.
CrlDistributionPoints(XCN_OID_CRL_DIST_POINTS) Berisi URI daftar pencabutan sertifikat dasar (CRL).
FreshestCRL(XCN_OID_FRESHEST_CRL) Berisi URI CRL delta. Sintaks ASN.1 yang sama digunakan untuk ekstensi ini dan ekstensi CrlDistributionPoints .
NameConstraints(XCN_OID_NAME_CONSTRAINTS) Mengidentifikasi namespace di mana semua nama subjek sertifikat dalam hierarki sertifikat harus berada. Ekstensi hanya digunakan dalam sertifikat otoritas sertifikasi.
PolicyConstraints(XCN_OID_POLICY_CONSTRAINTS) Membatasi validasi jalur dengan melarang pemetaan kebijakan atau dengan mengharuskan setiap sertifikat dalam hierarki berisi pengidentifikasi kebijakan yang dapat diterima.
PolicyMappings(XCN_OID_POLICY_MAPPINGS) Mengidentifikasi kebijakan dalam otoritas sertifikasi subordinat yang sesuai dengan kebijakan dalam otoritas sertifikasi penerbit. Nilai ekstensi berisi urutan penerbitan otoritas sertifikasi dan pemetaan kebijakan otoritas sertifikasi subordinat yang diwakili oleh pengidentifikasi objek.
PrivateKeyUsagePeriod(XCN_OID_PRIVATEKEY_USAGE_PERIOD) Menentukan periode validitas yang berbeda untuk kunci privat daripada untuk sertifikat yang terkait dengan kunci.
SubjectDirectoryAttributes(XCN_OID_SUBJECT_DIR_ATTRS) Menyampaikan atribut identifikasi seperti kewarganegaraan tentang subjek sertifikat. Nilai ekstensi adalah urutan pasangan nilai OID.
 

Terakhir, Anda dapat menggunakan antarmuka IX509Extension untuk menentukan ekstensi privat yang berisi informasi yang unik untuk komunitas tertentu.

Ekstensi ditambahkan ke struktur Atribut permintaan PKCS #10 dan ke struktur TaggedAttributes dari permintaan CMC. Untuk menambahkan ekstensi ke salah satu format permintaan, Anda harus terlebih dahulu menambahkannya ke koleksi IX509Extensions dan menggunakan koleksi untuk menginisialisasi objek IX509AttributeExtensions . Untuk informasi selengkapnya, lihat topik Ekstensi #10 PKCS dan Ekstensi CMC .

Warisan

Antarmuka IX509Extension mewarisi dari antarmuka IDispatch . IX509Extension juga memiliki jenis anggota ini:

Metode

Antarmuka IX509Extension memiliki metode ini.

 
IX509Extension::get_Critical

Menentukan dan mengambil nilai Boolean yang mengidentifikasi apakah ekstensi sertifikat sangat penting. (Dapatkan)
IX509Extension::get_ObjectId

Mengambil pengidentifikasi objek (OID) untuk ekstensi.
IX509Extension::get_RawData

Mengambil array byte yang berisi nilai ekstensi. (IX509Extension.get_RawData)
IX509Extension::Initialize

Menginisialisasi objek IX509Extension dengan menggunakan pengidentifikasi objek (OID) dan array byte yang berisi ekstensi yang dikodekan Distinguished Encoding Rules (DER).
IX509Extension::p ut_Critical

Menentukan dan mengambil nilai Boolean yang mengidentifikasi apakah ekstensi sertifikat sangat penting. (Put)

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

Lihat juga

API Pendaftaran Sertifikat

ICryptAttribute

IDispatch

IX509AttributeExtensions

IX509Ekstensi