Freigeben über


CMC-Erweiterungen

Erweiterungen werden in einer CMC-Anforderung eingeschlossen, indem sie der TaggedAttributes-Struktur hinzugefügt werden, die im folgenden ASN.1-Syntaxbeispiel gezeigt wird. Weitere Informationen finden Sie im Thema Attribute .

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

Jede Struktur in der TaggedAttributes-Auflistung enthält eine ganzzahlige ID, einen ASN.1-Objektbezeichner (OID) und einen Satz von Werten. Erweiterungen werden in eine Anforderung integriert, indem dem Feld werte eine CmcAddExtensions-Struktur hinzugefügt wird. Die ASN.1-Struktursyntax wird im folgenden Beispiel gezeigt. Der Objektbezeichner ist 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
}

Im folgenden Verfahren wird erläutert, wie Sie mit der Zertifikatregistrierungs-API Erweiterungen zu einer CMC-Zertifikatanforderung hinzufügen.

So verwenden Sie die Zertifikatregistrierungs-API zum Hinzufügen von Erweiterungen zu einer CMC-Zertifikatanforderung

  1. Erstellen Sie eine Erweiterung, indem Sie eine der verfügbaren Schnittstellen verwenden, die von der IX509Extension-Schnittstelle abgeleitet sind, oder verwenden Sie das IX509Extension-Objekt direkt, um benutzerdefinierte Erweiterungen zu erstellen.
  2. Rufen Sie die X509Extensions-Eigenschaft für das IX509CertificateRequestCmc-Objekt auf, um eine IX509Extensions-Auflistung abzurufen.
  3. Fügen Sie die in Schritt 1 erstellten Erweiterungen der IX509Extensions-Auflistung hinzu.
  4. Rufen Sie Registrieren auf , um die folgenden Aktionen automatisch auszuführen:

Attribute

Attributarchitektur

CMC-Attribute

Erweiterungen