Partager via


ICertServerPolicy::GetCertificateProperty, méthode (certif.h)

La méthode GetCertificateProperty retourne une propriété nommée à partir d’un certificat.

Vous devez appeler ICertServerPolicy::SetContext avant d’utiliser cette méthode.

Syntaxe

HRESULT GetCertificateProperty(
  [in]  const BSTR strPropertyName,
  [in]  LONG       PropertyType,
  [out] VARIANT    *pvarPropertyValue
);

Paramètres

[in] strPropertyName

Spécifie la propriété nommée à récupérer. Il existe un ensemble stock de propriétés de certificat, appelées propriétés de nom, qui sont toujours valides et peuvent être récupérées en appelant cette méthode. Pour plus d’informations sur ces propriétés, consultez Propriétés du nom. D’autres propriétés en regard des propriétés de nom peuvent également être récupérées.

Les propriétés DistinguishedName et RawName du certificat sont accessibles par ICertServerExit::GetCertificateProperty uniquement une fois que le module de stratégie a terminé de traiter la demande et que le certificat est émis. Les propriétés DistinguishedName et RawName du certificat émis peuvent également être lues par un module de sortie à l’aide de ICertServerExit::GetCertificateProperty.

Il existe des propriétés de certificat supplémentaires qui ne sont pas accessibles par GetCertificateProperty. Ces propriétés ne sont définies qu’après que le module de stratégie a retourné VR_INSTANT_OK et que le certificat a été émis. Pour obtenir la liste complète de toutes les propriétés d’un certificat émis, consultez GetCertificateProperty.

Les propriétés suivantes sont propres aux certificats et peuvent être lues par GetCertificateProperty.

Propriété certificate Signification
RequestID
Signé long
ID de requête interne
NotBefore
Date/Heure
Date de validité de début du certificat
NotAfter
Date/Heure
Date d’expiration du certificat
RawPublicKey
Binary
Clé d’objet
PublicKeyAlgorithm
String
ID d’objet de l’algorithme de clé d’objet (OID)
RawPublicKeyAlgorithmParameters
Binary
Paramètres de l’algorithme de clé d’objet
GénéralFlags
PROPTYPE_LONG
GénéralFlags dans la demande d’inscription. Il s’agit d’un OR au niveau du bit de valeurs. La seule valeur intéressante doit être la valeur d’indicateur de 0x00000400, qui indique à l’autorité de certification de ne pas conserver la demande dans la base de données. Si l’autorité de certification est en mode sans base de données (autrement dit, pour Windows Server 2008 R2 et les autorités de certification ultérieures, la base de données de l’autorité de certification a l’indicateur DBFLAGS_ENABLEVOLATILEREQUESTS défini), utilisez certutil -getreg DbFlags et certutil -setreg DBFlags pour configurer l’autorité de certification en mode sans base de données.

Windows Vista et Windows Storage Server 2003 : Ce champ n’est pas pris en charge.

RequesterNameFromOldCertificate
PROPTYPE_STRING
Pour les demandes de renouvellement, retourne le nom du compte du demandeur (par exemple, contoso\requester).
 

Les propriétés suivantes s’appliquent à l’autorité de certification.

Propriété de l’autorité de certification Signification
CAType
Long
Type d’autorité de certification. Il peut s’agir de l’une des valeurs suivantes (définies dans Certsrv.h) :
  • ENUM_ENTERPRISE_ROOTCA
  • ENUM_ENTERPRISE_SUBCA
  • ENUM_STANDALONE_ROOTCA
  • ENUM_STANDALONE_SUBCA
CertCount
Long
Nombre de certificats d’autorité de certification. Cette valeur est une plus le nombre de fois que l’autorité de certification a été renouvelée. Pour plus d’informations sur le renouvellement, consultez Certification.
CertState
Long
État du certificat d’autorité de certification. Il peut s’agir de l’une des valeurs suivantes :
  • CA_DISP_ERROR : le certificat d’autorité de certification n’a jamais été émis.
  • CA_DISP_REVOKED : le certificat d’autorité de certification a été révoqué.
  • CA_DISP_VALID : le certificat d’autorité de certification est toujours valide.
  • CA_DISP_INVALID : le certificat d’autorité de certification a expiré.
Ce nom de propriété peut être ajouté à « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index de liste de révocation de certificats). Pour plus d’informations sur les indices de certificat et de liste de révocation de certificats, consultez Renouvellement de l’autorité de certification.
CertSuffix
String
Suffixe du certificat d’autorité de certification. Le suffixe est une chaîne vide pour les certificats d’autorité de certification avec un index de zéro ; sinon, le suffixe (sous la forme « (nn) », où nn est l’index de certificat) est appliqué à toutes les URL qui pointent vers des certificats d’autorité de certification stockés dans des fichiers ou des objets de service d’annuaire. Pour les URL non LDAP , le suffixe apparaît généralement avant le texte « .crt ». Pour les URL LDAP, le suffixe est généralement ajouté au premier « CN= » dans le nom unique complet.

Ce nom de propriété peut être ajouté à « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index de liste de révocation de certificats). Pour plus d’informations sur les indices de certificat et de liste de révocation de certificats, consultez Renouvellement de l’autorité de certification.

CRLIndex
Long
Index de liste de révocation de certificats (CRL). L’ajout d’un index de certificat à ce nom de propriété vous permet de récupérer l’index de liste de révocation de certificats. L’index de liste de révocation de certificats ne correspond pas nécessairement à l’index du certificat. Pour plus d’informations, consultez Certification.

Ce nom de propriété peut être ajouté à « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index de liste de révocation de certificats). Pour plus d’informations sur les indices de certificat et de liste de révocation de certificats, consultez Renouvellement de l’autorité de certification.

CRLState
Long
État de liste de révocation de certificats. Il peut s’agir de l’une des valeurs suivantes :
  • CA_DISP_ERROR : la liste de révocation de certificats est gérée par un autre certificat d’autorité de certification.
  • CA_DISP_REVOKED : tous les certificats d’autorité de certification non expirés utilisant la liste de révocation de certificats de ce certificat d’autorité de certification ont été révoqués.
  • CA_DISP_VALID : le certificat d’autorité de certification est toujours utilisé pour publier des listes de révocation de certificats en fonction des besoins.
  • CA_DISP_INVALID : tous les certificats d’autorité de certification utilisant la liste de révocation de certificats de ce certificat d’autorité de certification ont expiré.
Ce nom de propriété peut être ajouté à « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index de liste de révocation de certificats). Pour plus d’informations sur les index de certificat et de liste de révocation de révocation de certificats, consultez Renouvellement de l’autorité de certification.
CRLSuffix
String
Suffixe de la liste de révocation de certificats d’autorité de certification. Le suffixe est une chaîne vide pour les listes de contrôle d’accès avec un index de zéro ; sinon, le suffixe (sous la forme « (nn) », où nn est l’index de liste de révocation de certificats) est appliqué à toutes les URL qui pointent vers des listes de contrôle d’accès stockées dans des fichiers ou des objets de service d’annuaire. Pour les URL non LDAP, le suffixe apparaît généralement avant le texte .crl. Pour les URL LDAP, le suffixe est généralement ajouté au premier « CN= » dans le nom unique complet.

Ce nom de propriété peut être ajouté avec « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index CRLS). Pour plus d’informations sur les index de certificat et de liste de révocation de révocation de certificats, consultez Renouvellement de l’autorité de certification.

fUseDS
Long
Indique si l’autorité de certification utilise un service d’annuaire. Il peut s’agir de l’une des valeurs suivantes :
  • 0=no
  • 1=oui
MachineDNSName
String
Nom DNS du serveur hébergeant l’autorité de certification.
ModuleRegistryLocation
String
Emplacement du Registre disponible pour l’utilisation par le module.
RawCACertificate
Binary
Certificat d’autorité de certification.

Ce nom de propriété peut être ajouté avec « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index CRLS). Pour plus d’informations sur les index de certificat et de liste de révocation de révocation de certificats, consultez Renouvellement de l’autorité de certification.

RawCRL
Binary
Liste de révocation de certificats (CRL) de l’autorité de certification.

Ce nom de propriété peut être ajouté avec « .# », où # représente un index de certificat d’autorité de certification (ou, dans le cas de la propriété CRLSuffix, un index CRLS). Pour plus d’informations sur les index de certificat et de liste de révocation de révocation de certificats, consultez Renouvellement de l’autorité de certification.

RequesterCAAccess
Long
Indique si le demandeur est autorisé à demander le certificat. Il peut s’agir de l’une des valeurs suivantes :
  • 0=no
  • 1=oui
(Le composant logiciel enfichable MMC de l’autorité de certification peut être utilisé pour contrôler les autorisations de demande de certificat .)
SanitizedCAName
String
Nom aseptisé de l’autorité de certification. Pour plus d’informations sur les noms d’autorité de certification assainie, consultez ICertConfig::GetConfig.
SanitizedShortName
String
Nom aseptisé de l’autorité de certification, qui est raccourci et qui contient une valeur de hachage pour garantir l’unicité.

[in] PropertyType

Spécifie le type de propriété. Le type peut être l’une des valeurs suivantes.

Type Signification
PROPTYPE_LONG
Données longues signées
PROPTYPE_DATE
Date/Heure
PROPTYPE_BINARY
Données binaires
PROPTYPE_STRING
Données de chaîne Unicode

[out] pvarPropertyValue

Pointeur vers VARIANT qui contiendra la valeur de la propriété.

Valeur retournée

Si la méthode réussit, la méthode retourne S_OK, et *pvarPropertyValue est défini sur le VARIANT qui contient la valeur de la propriété demandée.

Si la méthode échoue, elle retourne une valeur HRESULT qui indique l’erreur. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Configuration requise

   
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certif.h (include Certsrv.h)
Bibliothèque Certidl.lib
DLL Certcli.dll

Voir aussi

ICertServerPolicy

ICertServerPolicy::SetContext

Propriétés du nom