Ekstensi CMC
Ekstensi disertakan dalam permintaan CMC dengan menambahkannya ke struktur TaggedAttributes yang diperlihatkan dalam contoh sintaks ASN.1 berikut. Untuk informasi selengkapnya, lihat topik Atribut .
CmcData ::= SEQUENCE
{
controlSequence ControlSequence,
reqSequence ReqSequence,
cmsSequence CmsSequence,
otherMsgSequence OtherMsgSequence
}
ControlSequence ::= SEQUENCE OF TaggedAttribute
TaggedAttribute ::= SEQUENCE
{
bodyPartID BodyPartID,
type EncodedObjectID,
values AttributeSetValue
}
BodyPartID ::= INTEGER (0..4294967295)
EncodedObjectID ::= OBJECT IDENTIFIER
AttributeSetValue ::= SET OF ANY
Setiap struktur dalam koleksi TaggedAttributes berisi ID bilangan bulat, pengidentifikasi objek (OID) ASN.1, dan sekumpulan nilai. Ekstensi dimasukkan ke dalam permintaan dengan menambahkan struktur CmcAddExtensions ke bidang nilai . Sintaks struktur ASN.1 diperlihatkan dalam contoh berikut. Pengidentifikasi objek XCN_OID_CMC_ADD_EXTENSIONS (1.3.6.1.5.5.7.7.8).
CmcAddExtensions ::= SEQUENCE
{
pkiDataReference BodyPartID,
certReferences BodyPartIDSequence,
extensions Extensions
}
Extensions ::= SEQUENCE OF Extension
Extension ::= SEQUENCE
{
extnId EncodedObjectID,
critical BOOLEAN DEFAULT FALSE,
extnValue OCTETSTRING
}
Prosedur berikut membahas cara menggunakan API Pendaftaran Sertifikat untuk menambahkan ekstensi ke permintaan sertifikat CMC.
Untuk menggunakan API Pendaftaran Sertifikat untuk menambahkan ekstensi ke permintaan sertifikat CMC
- Buat ekstensi dengan menggunakan salah satu antarmuka yang tersedia yang berasal dari antarmuka IX509Extension atau gunakan objek IX509Extension secara langsung untuk membuat ekstensi kustom.
- Panggil properti X509Extensions pada objek IX509CertificateRequestCmc untuk mengambil koleksi IX509Extensions .
- Tambahkan ekstensi yang dibuat di langkah 1 ke koleksi IX509Extensions .
- Panggil Pendaftaran untuk melakukan tindakan berikut secara otomatis:
- Ambil objek ICryptAttributes dari objek IX509CertificateRequestCmc .
- Buat dan inisialisasi objek IX509AttributeExtensions dengan menggunakan koleksi IX509Extensions yang diambil pada langkah 2.
- Buat koleksi IX509Attributes dan tambahkan objek IX509AttributeExtensions ke dalamnya.
- Gunakan koleksi IX509Attributes untuk menginisialisasi objek ICryptAttribute .
- Tambahkan objek ICryptAttribute ke koleksi ICryptAttributes .
Topik terkait