Partager via


Fonction QueryContextAttributes (CredSSP)

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

SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
  _In_  PCtxtHandle phContext,
  _In_  ULONG       ulAttribute,
  _Out_ PVOID       pBuffer
);

Paramètres

phContext [in]

Handle du contexte de sécurité à interroger.

ulAttribute [in]

Attribut du contexte à retourner. Ce paramètre peut prendre les valeurs suivantes. Sauf indication contraire, les attributs s’appliquent au client et au serveur.

Valeur Signification
SECPKG_ATTR_C_ACCESS_TOKEN
0x80000012
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.
SECPKG_ATTR_C_FULL_ACCESS_TOKEN
0x80000082
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.
SECPKG_ATTR_CERT_TRUST_STATUS
0x80000084
Le paramètre pBuffer contient un pointeur vers une structure de CERT_TRUST_STATUS qui spécifie des informations d’approbation sur le certificat.
Cet attribut est pris en charge uniquement sur le client.
SECPKG_ATTR_CREDS
0x80000080
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 un nom d’utilisateur et un mot de passe, ou un nom d’utilisateur et un code pin carte intelligent.
Cet attribut est pris en charge uniquement sur le serveur.
SECPKG_ATTR_CREDS_2
0x80000086
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 empaquetée.
Si les informations d’identification du client sont le nom d’utilisateur et le code confidentiel carte intelligent, 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.
SECPKG_ATTR_NEGOTIATION_PACKAGE
0x80000081
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_PackageInfo qui spécifie le nom du package d’authentification négocié par le fournisseur Microsoft Negotiate .
SECPKG_ATTR_PACKAGE_INFO
10
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.
SECPKG_ATTR_SERVER_AUTH_FLAGS
0x80000083
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.
SECPKG_ATTR_SIZES
0x0
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.
SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
124
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.

 

pBuffer [out]

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
SEC_E_INVALID_HANDLE
0x80100003
Échec de la fonction. Le paramètre phContext spécifie un handle dans un contexte incomplet.
SEC_E_UNSUPPORTED_FUNCTION
0x80090302
Échec de la fonction. La valeur du paramètre ulAttribute n’est pas valide.

 

Notes

La structure pointée par 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 .

Spécifications

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]
En-tête
Sspi.h (include Security.h)
Bibliothèque
Secur32.lib
DLL
Secur32.dll
Noms Unicode et ANSI
QueryContextAttributesW (Unicode) et QueryContextAttributesA (ANSI)

Voir aussi

Fonctions SSPI

CERT_CONTEXT

FreeContextBuffer

SecPkgContext_ClientCreds

SecPkgContext_Sizes