Partager via


QueryContextAttributesW, fonction (sspi.h)

La fonction QueryContextAttributes (CredSSP) permet à une application de transport d’interroger le fournisseur de support de sécurité d’informations d’identification (CredSSP) package de sécurité 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 vers le contexte de sécurité à interroger.

[in] ulAttribute

Attribut du contexte à renvoyer. Ce paramètre peut être l’une des valeurs suivantes. Sauf indication contraire, les attributs s’appliquent à la fois 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 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 le nom d’utilisateur et le mot de passe ou le nom d’utilisateur et le code confidentiel de carte à puce.

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 pack.

Si les informations d’identification du client sont le nom d’utilisateur et le code confidentiel de carte à puce, la mémoire tampon est une structure KERB_CERTIFICATE_LOGON pack.

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.

[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 de retour

Si la fonction réussit, elle retourne SEC_E_OK.

Si la fonction échoue, elle peut retourner les codes d’erreur suivants.

Retourner le code/la valeur 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.

Remarques

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 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.

Note

L’en-tête sspi.h définit QueryContextAttributes comme 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.

Exigences

Exigence Valeur
client minimum pris en charge Windows Vista [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2008 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête sspi.h (include Security.h)
bibliothèque Secur32.lib
DLL Secur32.dll

Voir aussi

CERT_CONTEXT

FreeContextBuffer

fonctions SSPI

SecPkgContext_ClientCreds

SecPkgContext_Sizes