Interface ISignerCertificate (certenroll.h)
L’interface ISignerCertificate représente un certificat de signature qui vous permet de signer une demande de certificat. Lorsque vous initialisez l’interface, le contrôle d’inscription de certificat récupère le certificat de signature à partir du magasin personnel et l’utilise pour rechercher une clé privée associée. Vous pouvez utiliser la clé privée pour signer une requête PKCS #7 ou CMC, mais pas une requête PKCS #10. Les demandes PKCS #10 doivent être signées à l’aide de la clé privée associée à la clé publique incluse dans la demande. Les certificats auto-signés peuvent être signés à l’aide de la clé privée associée à la demande ou de la clé privée associée au certificat de signature. Ceci est résumé dans le tableau suivant.
Type de requête (Interface) | Certificats de signature |
---|---|
PKCS #7(IX509CertificateRequestPkcs7) | 1 |
PKCS #10(IX509CertificateRequestPkcs10) | 0 |
CMC(IX509CertificateRequestCmc) | 0 ou plus |
Auto-signé(IX509CertificateRequestCertificate) | 0 ou 1 |
Lors de la signature d’une requête CMC, les données à signer se composent d’un objet CmcData encodé Distinguished Encoding Rules (DER) encapsulé dans un objet CMS SignedData. Le champ encryptedDigest de l’objet SignerInfo contient une signature et plusieurs objets SignerInfo peuvent être associés à la demande.
---------------------------------------------------------------------
-- CMC request data
---------------------------------------------------------------------
CmcData ::= SEQUENCE
{
controlSequence SEQUENCE OF TaggedAttribute,
reqSequence SEQUENCE OF TaggedRequest,
cmsSequence SEQUENCE OF TaggedContentInfo,
otherMsgSequence SEQUENCE OF TaggedOtherMs
}
---------------------------------------------------------------------
-- SignedData object that wraps the CMC request
---------------------------------------------------------------------
SignedData ::= SEQUENCE
{
version INTEGER,
digestAlgorithms DigestAlgorithmIdentifiers,
contentInfo ContentInfo,
certificates [0] IMPLICIT Certificates OPTIONAL,
crls [1] IMPLICIT CertificateRevocationLists OPTIONAL,
signerInfos SignerInfos
}
DigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifier
DigestAlgorithmIdentifiersNC ::= SET OF DigestAlgorithmIdentifierNC
SignerInfos ::= SET OF SignerInfo
SignerInfo ::= SEQUENCE
{
version INTEGER,
sid CertIdentifier,
digestAlgorithm DigestAlgorithmIdentifier,
authenticatedAttributes [0] IMPLICIT Attributes OPTIONAL,
digestEncryptionAlgorithm DigestEncryptionAlgId,
encryptedDigest EncryptedDigest,
unauthenticatedAttributes [1] IMPLICIT Attributes OPTIONAL
}
Chaque objet ISignerCertificate est associé à un objet IX509SignatureInformation qui identifie les algorithmes de hachage et de clé publique utilisés. Cet objet est créé et initialisé lorsque l’objet ISignerCertificate est initialisé.
Héritage
L’interface ISignerCertificate hérite de l’interface IDispatch. ISignerCertificate possède également les types de membres suivants :
Méthodes
L’interface ISignerCertificate possède ces méthodes.
ISignerCertificate ::get_Certificate Récupère un tableau d’octets encodé de Distinguished Encoding Rules (DER) qui contient le certificat. |
ISignerCertificate ::get_ParentWindow Spécifie ou récupère l’ID de la fenêtre utilisée pour afficher les informations de certificat de signature. (Obtenir) |
ISignerCertificate ::get_PrivateKey Récupère la clé privée associée à l’objet ISignerCertificate. |
ISignerCertificate ::get_SignatureInformation Récupère un objet IX509SignatureInformation qui contient des informations sur la signature de certificat. |
ISignerCertificate ::get_Silent Spécifie ou récupère une valeur booléenne qui indique si l’utilisateur est averti lorsque la clé privée est utilisée pour signer une demande de certificat. (Obtenir) |
ISignerCertificate ::get_UIContextMessage Spécifie ou récupère une chaîne qui contient le texte de l’interface utilisateur associé au certificat de signature. (Obtenir) |
ISignerCertificate ::Initialize Initialise l’objet à partir d’un certificat de signature. |
ISignerCertificate ::p ut_ParentWindow Spécifie ou récupère l’ID de la fenêtre utilisée pour afficher les informations de certificat de signature. (Put) |
ISignerCertificate ::p ut_Pin Spécifie un numéro d’identification personnel (PIN) utilisé pour authentifier un utilisateur carte intelligent. |
ISignerCertificate ::p ut_Silent Spécifie ou récupère une valeur booléenne qui indique si l’utilisateur est averti lorsque la clé privée est utilisée pour signer une demande de certificat. (Put) |
ISignerCertificate ::p ut_UIContextMessage Spécifie ou récupère une chaîne qui contient le texte de l’interface utilisateur associé au certificat de signature. (Put) |
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 |