Fonction QueryContextAttributesW (sspi.h)
La fonction QueryContextAttributes (CredSSP) permet à une application de transport d’interroger le package de sécurité CredSSP (Credential Security Support Provider) pour certains attributs d’un contexte de sécurité.
Syntaxe
KSECDDDECLSPEC SECURITY_STATUS SEC_ENTRY QueryContextAttributesW(
[in] PCtxtHandle phContext,
[in] unsigned long ulAttribute,
[out] void *pBuffer
);
Paramètres
[in] phContext
Handle du contexte de sécurité à interroger.
[in] ulAttribute
Attribut du contexte à retourner. Ce paramètre peut prendre les valeurs suivantes. Sauf indication contraire, les attributs s’appliquent à la fois au client et au serveur.
Valeur | Signification |
---|---|
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_AccessToken qui spécifie le jeton d’accès pour le contexte de sécurité actuel.
Cet attribut est pris en charge uniquement sur le serveur. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_AccessToken qui spécifie le jeton d’accès pour le contexte de sécurité actuel.
Cet attribut est pris en charge uniquement sur le serveur. |
|
Le paramètre pBuffer contient un pointeur vers une structure CERT_TRUST_STATUS qui spécifie des informations d’approbation sur le certificat.
Cet attribut est pris en charge uniquement sur le client. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_ClientCreds qui spécifie les informations d’identification du client.
Les informations d’identification du client peuvent être le nom d’utilisateur et le mot de passe ou le nom d’utilisateur et le code confidentiel intelligent carte. Cet attribut est pris en charge uniquement sur le serveur. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_ClientCreds qui spécifie les informations d’identification du client.
Si les informations d’identification du client sont le nom d’utilisateur et le mot de passe, la mémoire tampon est une structure KERB_INTERACTIVE_LOGON packed. Si les informations d’identification du client sont le nom d’utilisateur et le code confidentiel intelligent carte, la mémoire tampon est une structure de KERB_CERTIFICATE_LOGON empaquetée. Si les informations d’identification du client sont des informations d’identification d’identité en ligne, la mémoire tampon est une structure SEC_WINNT_AUTH_IDENTITY_EX2 marshalée. Cet attribut est pris en charge uniquement sur le serveur CredSSP. Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cette valeur n’est pas prise en charge. |
|
Le paramètre pBuffer contient un pointeur vers une structure de SecPkgContext_PackageInfo qui spécifie le nom du package d’authentification négocié par le fournisseur Microsoft Negotiate . |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_PackageInfo .
Retourne des informations sur le fournisseur de services partagés en cours d’utilisation. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Flags qui spécifie des informations sur les indicateurs dans le contexte de sécurité actuel.
Cet attribut est pris en charge uniquement sur le client. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Sizes .
Interroge les tailles des structures utilisées dans les fonctions par message et les échanges d’authentification. |
|
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_SubjectAttributes .
Cette valeur retourne des informations sur les attributs de sécurité de la connexion. Cette valeur est prise en charge uniquement sur le serveur CredSSP. Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cette valeur n’est pas prise en charge. |
[out] pBuffer
Pointeur vers une structure qui reçoit les attributs. Le type de structure dépend de la valeur du paramètre ulAttribute .
Valeur retournée
Si la fonction réussit, elle retourne SEC_E_OK.
Si la fonction échoue, elle peut retourner les codes d’erreur suivants.
Code/valeur de retour | Description |
---|---|
|
La fonction a échoué. Le paramètre phContext spécifie un handle dans un contexte incomplet. |
|
La fonction a échoué. La valeur du paramètre ulAttribute n’est pas valide. |
Remarques
La structure pointée vers le paramètre pBuffer varie en fonction de l’attribut interrogé.
Alors que l’appelant doit allouer la structure pBuffer elle-même, le fournisseur de services partagés alloue toute la mémoire nécessaire pour contenir les membres de taille variable de la structure pBuffer . La mémoire allouée par le fournisseur de services partagés doit être libérée en appelant la fonction FreeContextBuffer .
Notes
L’en-tête sspi.h définit QueryContextAttributes comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
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 | sspi.h (include Security.h) |
Bibliothèque | Secur32.lib |
DLL | Secur32.dll |