Interface IX509AttributeExtensions (certenroll.h)
L’interface IX509AttributeExtensions définit des méthodes et des propriétés qui initialisent et récupèrent des extensions de certificat dans une demande de certificat. Par exemple, la structure CertificateRequestInfo d’une requête PKCS #10 ne contient pas de champ pour les extensions de version 3. Au lieu de cela, les extensions doivent être ajoutées à la collection d’attributs dans la requête.
CertificationRequestInfo ::= SEQUENCE
{
version INTEGER { v1(0) } (v1,...),
subject Name,
subjectPKInfo SubjectPublicKeyInfo{{ PKInfoAlgorithms }},
attributes [0] Attributes{{ CRIAttributes }}
}
En outre, les extensions sont incluses dans une requête CMC en les ajoutant à la structure TaggedAttributes illustrée dans l’exemple de syntaxe ASN.1 (Abstract Syntax Notation One ) suivant. Pour plus d’informations, consultez Attributs et extensions.
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
Vous pouvez créer une ou plusieurs extensions de version 3 et les inclure dans une demande de certificat de la manière suivante :
- Initialisez l’un des objets IX509Extension suivants :
- IX509ExtensionAlternativeNames
- IX509ExtensionAuthorityKeyIdentifier
- IX509ExtensionBasicConstraints
- IX509ExtensionCertificatePolicies
- IX509ExtensionMSApplicationPolicies
- IX509ExtensionEnhancedKeyUsage
- IX509ExtensionKeyUsage
- IX509ExtensionSmimeCapabilities
- IX509ExtensionSubjectKeyIdentifier
- IX509ExtensionTemplate
- IX509ExtensionTemplateName
- Ajoutez les objets d’extension dans une collection IX509Extensions .
- Utilisez la collection IX509Extensions pour initialiser un objet IX509AttributeExtensions .
- Ajoutez l’objet IX509AttributeExtensions à une collection IX509Attributes .
- Utilisez la collection IX509Attributes pour initialiser un objet ICryptAttribute .
- Initialisez un objet de requête CMC ou PKCS #10 et récupérez la collection ICryptAttributes .
- Ajoutez l’objet ICryptAttribute à la collection ICryptAttributes pour la requête.
Héritage
L’interface IX509AttributeExtensions hérite de IX509Attribute. IX509AttributeExtensions a également les types de membres suivants :
Méthodes
L’interface IX509AttributeExtensions a ces méthodes.
IX509AttributeExtensions ::get_X509Extensions Récupère les extensions de certificat. |
IX509AttributeExtensions ::InitializeDecode Initialise l’objet à partir d’un tableau d’octets encodé Distinguished Encoding Rules (DER) qui contient la valeur d’attribut. (IX509AttributeExtensions.InitializeDecode) |
IX509AttributeExtensions ::InitializeEncode Initialise l’objet à partir d’une collection IX509Extensions. |
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | certenroll.h |