Fonction CryptGetObjectUrl (wincrypt.h)

La fonction CryptGetObjectUrl acquiert l’URL de l’objet distant à partir d’un certificat, d’une liste d’approbation de certificat (CTL) ou d’une liste de révocation de certificats (CRL).

La fonction prend l’objet, le décode et fournit un pointeur vers un tableau d’URL de l’objet. Par exemple, à partir d’un certificat, une liste de distribution de listes de révocation de certificats d’URL se trouve dans le tableau.

Syntaxe

BOOL CryptGetObjectUrl(
  [in]      LPCSTR           pszUrlOid,
  [in]      LPVOID           pvPara,
  [in]      DWORD            dwFlags,
  [out]     PCRYPT_URL_ARRAY pUrlArray,
  [in, out] DWORD            *pcbUrlArray,
  [out]     PCRYPT_URL_INFO  pUrlInfo,
  [in, out] DWORD            *pcbUrlInfo,
            LPVOID           pvReserved
);

Paramètres

[in] pszUrlOid

Pointeur vers un identificateur d’objet (OID) qui identifie l’URL demandée. Si le HIWORD du paramètre pszUrlOid est égal à zéro, loWORD spécifie l’identificateur entier pour le type de la structure spécifiée.

Ce paramètre peut prendre les valeurs suivantes. Pour plus d’informations sur la façon dont ces valeurs affectent le paramètre pvPara , consultez le titre « Pour le paramètre pvPara » dans la colonne Meaning .

Valeur Signification
URL_OID_CERTIFICATE_ISSUER
Fournit l’URL de l’émetteur de certificat récupéré à partir de l’extension ou de la propriété d’accès aux informations d’autorité d’un certificat.

Pour le paramètre pvPara : pointeur vers une structure CERT_CONTEXT qui a été émise par l’émetteur dont l’URL est demandée.

URL_OID_CERTIFICATE_CRL_DIST_POINT
Fournit la liste des URL des points de distribution de liste de révocation de certificats récupérées à partir de l’extension ou de la propriété du point de distribution de liste de révocation de certificats d’un certificat.

Pour le paramètre pvPara : pointeur vers une structure CERT_CONTEXT dont le point de distribution de liste de révocation de certificats est demandé.

URL_OID_CERTIFICATE_CRL_DIST_POINT_AND_OCSP
Fournit une liste des URL de point de distribution OCSP et CRL à partir des extensions ou des propriétés AIA (Authority Information Access) et CRL d’un certificat. La fonction retourne d’abord les URL des points de distribution de liste de révocation de certificats. Avant d’utiliser des URL OCSP, vous devez supprimer le préfixe L"ocsp: ».

Pour le paramètre pvPara : pointeur vers une structure de CERT_CONTEXT dont les URL de point de distribution OCSP et CRL sont demandées.

URL_OID_CERTIFICATE_OCSP
Fournit une URL OCSP à partir de l’extension d’accès aux informations d’autorité (AIA) ou de la propriété d’un certificat.

Pour le paramètre pvPara : pointeur vers une structure CERT_CONTEXT dont l’URL OCSP est demandée.

URL_OID_CERTIFICATE_OCSP_AND_CRL_DIST_POINT
Fournit une liste des URL de point de distribution OCSP et CRL à partir des extensions ou des propriétés AIA (Authority Information Access) et CRL d’un certificat. La fonction retourne d’abord toutes les URL OCSP. Avant d’utiliser des URL OCSP, vous devez supprimer le préfixe L"ocsp: ».

Pour le paramètre pvPara : pointeur vers une structure de CERT_CONTEXT dont les URL de point de distribution OCSP et CRL sont demandées.

URL_OID_CERTIFICATE_ONLY_OCSP
Fournit une liste d’URL OCSP à partir de l’extension d’accès aux informations d’autorité (AIA) ou de la propriété d’un certificat. Avant d’utiliser des URL OCSP, vous devez supprimer le préfixe L"ocsp: ».

Pour le paramètre pvPara : pointeur vers une structure CERT_CONTEXT dont les URL OCSP sont demandées.

URL_OID_CTL_ISSUER
Fournit l’URL de l’émetteur de la CTL récupérée à partir d’une méthode d’attribut d’accès aux informations d’autorité encodée dans chaque information de signataire dans la CTL PKCS #7.

Pour le paramètre pvPara : pointeur vers un index de signataire CTL_CONTEXT structure qui a été émise par l’émetteur dont l’URL, identifiée par l’index du signataire, est demandée.

URL_OID_CTL_NEXT_UPDATE
Fournit l’URL de la prochaine mise à jour de cette CTL récupérée à partir d’une extension, d’une propriété ou d’une méthode d’attribut d’informations d’accès aux informations d’autorité.

Pour le paramètre pvPara : pointeur vers un index de signataire CTL_CONTEXT structure dont l’URL de mise à jour suivante est demandée et un index de signataire facultatif, au cas où il est nécessaire d’case activée les attributs d’informations du signataire.

URL_OID_CRL_ISSUER
Fournit l’URL de l’émetteur de la liste de révocation de certificats récupérée à partir d’une propriété sur une liste de révocation de certificats héritée du certificat sujet (à partir de l’émetteur du certificat d’objet ou de l’extension du point de distribution de certificat d’objet). Elle est encodée en tant que méthode d’extension d’accès aux informations d’autorité.

Pour le paramètre pvPara : pointeur vers une structure CRL_CONTEXT qui a été émise par l’émetteur dont l’URL est demandée.

URL_OID_CERTIFICATE_FRESHEST_CRL
Récupère l’extension ou la propriété de liste de révocation de certificats la plus récente du certificat.

Pour le paramètre pvPara : PCCERT_CONTEXT d’un certificat dont le point de distribution de liste de révocation de certificats le plus récent est demandé.

URL_OID_CRL_FRESHEST_CRL
Récupère l’extension ou la propriété de liste de révocation de certificats la plus récente de la liste de révocation de certificats.

Pour le paramètre pvPara : pointeur vers une structure CERT_CRL_CONTEXT_PAIR qui contient la liste de révocation de certificats de base d’un certificat dont le point de distribution de liste de révocation de certificats le plus récent est demandé.

URL_OID_CROSS_CERT_DIST_POINT
Récupère l’extension ou la propriété du point de distribution de certificats croisés du certificat.

Pour le paramètre pvPara : PCCERT_CONTEXT d’un certificat dont le point de distribution entre certificats est demandé.

URL_OID_CROSS_CERT_SUBJECT_INFO_ACCESS
Récupère l’extension ou la propriété d’accès aux informations d’objet inter-certificats du certificat.

Pour le paramètre pvPara : PCCERT_CONTEXT d’un certificat dont l’accès aux informations sur le sujet entre certificats est demandé.

[in] pvPara

Structure déterminée par la valeur de pszUrlOid. Pour plus d’informations, consultez la description du paramètre pszUrlOid .

[in] dwFlags

Ensemble d’indicateurs utilisés pour obtenir le localisateur d’URL d’un objet. Il peut s’agir de zéro ou d’une combinaison d’une ou plusieurs des valeurs suivantes.

Valeur Signification
CRYPT_GET_URL_FROM_PROPERTY
Localise l’URL à partir de la propriété de l’objet (emplacement des données).
CRYPT_GET_URL_FROM_EXTENSION
Localise l’URL à partir de l’extension de l’objet .
CRYPT_GET_URL_FROM_UNAUTH_ATTRIBUTE
Recherche l’URL à partir d’un attribut non authentifié à partir des données d’informations du signataire.
CRYPT_GET_URL_FROM_AUTH_ATTRIBUTE
Localise l’URL à partir d’un attribut authentifié à partir des données d’informations du signataire.

[out] pUrlArray

Pointeur vers une mémoire tampon pour recevoir les données de l’entrée de valeur. Ce paramètre peut être NULL pour trouver la longueur de la mémoire tampon requise pour contenir les données.

Pour plus d’informations, consultez Récupération de données de longueur inconnue.

[in, out] pcbUrlArray

Pointeur vers un DWORD qui spécifie la taille, en octets, de la mémoire tampon vers laquelle pointe le paramètre pUrlArray . Lorsque la fonction retourne, le DWORD contient le nombre d’octets stockés dans la mémoire tampon. Ce paramètre peut être NULL uniquement si pUrlArray a la valeur NULL.

[out] pUrlInfo

Pointeur facultatif vers une structure CRYPT_URL_INFO qui reçoit les données de l’entrée de valeur.

[in, out] pcbUrlInfo

Pointeur vers un DWORD qui spécifie la taille, en octets, de la mémoire tampon vers laquelle pointe le paramètre pUrlArray . Lorsque la fonction retourne, le DWORD contient le nombre d’octets stockés dans la mémoire tampon.

Note Lors du traitement des données retournées dans la mémoire tampon, les applications doivent utiliser la taille réelle des données retournées. La taille réelle peut être légèrement inférieure à la taille de la mémoire tampon spécifiée lors de l’entrée. Lors de l’entrée, les tailles de mémoire tampon sont généralement spécifiées suffisamment grandes pour garantir que les données de sortie les plus volumineuses possibles tiennent dans la mémoire tampon. En sortie, la variable pointée par ce paramètre est mise à jour pour refléter la taille réelle des données copiées dans la mémoire tampon.
 

pvReserved

Réservé pour une utilisation ultérieure et doit être NULL.

Valeur retournée

Si la fonction réussit, la fonction retourne une valeur différente de zéro (TRUE).

Si la fonction échoue, elle retourne zéro (FALSE). Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Configuration requise

   
Client minimal pris en charge Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête wincrypt.h
Bibliothèque Cryptnet.lib
DLL Cryptnet.dll

Voir aussi

Fonctions de récupération d’objet à distance