QueryContextAttributes (SChannel) (fonction)

La fonction QueryContextAttributes (SChannel) permet à une application de transport d’interroger le package de sécurité Schannel 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 [ dans]

Handle vers le contexte de sécurité à interroger.

ulAttribute [ dans]

Spécifie l’attribut du contexte à retourner. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
SECPKG _ _ _ Jeton d’accès attr
13
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ AccessToken .
Retourne un handle pour le jeton d’accès.
SECPKG _ _ _ Données de l’application attr
0x5E
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ SessionAppData .
Retourne ou spécifie les données d’application pour la session.
Cet attribut est pris en charge uniquement par le package de sécuritéSchannel.
SECPKG _ _Autorité attr
6
Le paramètre pbuffer contient un pointeur vers une structure d' _ autorité SecPkgContext .
Interroge le nom de l’autorité d’authentification.
SECPKG _ Informations de _ chiffrement _ attr
0x64
Le paramètre pbuffer contient un pointeur vers une structure d' [informations de _ chiffrementSecPkgContext](secpkgcontext-cipherinfo.md) .
Retourne une nouvelle structure d’informations de chiffrement CNG.
SECPKG _ _ _ Informations de connexion attr
0x5A
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ ConnectionInfo .
Retourne des informations détaillées sur la connexion établie.
SECPKG _ 0x6b _ de _ génération de clé d’attr
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ KeyingMaterial . La fonctionnalité d’exportation de la clé est conforme à la norme RFC 5705.
L’interrogation de cet attribut avant la génération du secret principal ou avant l’attribut SECPKG _ attr _ _ keyMaterial _ info a été définie avec le résultat d’une erreur.
cet attribut est pris en charge uniquement par le package de sécurité Schannel dans Windows 10 et Windows Server 2016 ou versions ultérieures.
SECPKG _ _Références d’identification _ 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 de _ _ connexion interactive KERB compressée.
Si les informations d’identification du client sont le nom d’utilisateur et le code confidentiel de la carte à puce, la mémoire tampon est une structure de _ _ connexion de certificat KERB compressée.
Si les informations d’identification du client sont des informations d’identification d’identité en ligne, la mémoire tampon est une structure EX2 de l' _ _ identité d’authentification _ _ winnt du sec 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 _ _ _ Informations DCE d’attr
.
3
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ DceInfo .
Requêtes pour les données d’autorisation utilisées par les services DCE.
SECPKG _ ATTR _ _ _ bloc de clé EAP
0x5B
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ EapKeyBlock .
Requêtes pour les données de clé utilisées par le protocole EAP TLS.
Cet attribut est pris en charge uniquement par le package de sécuritéSchannel.
SECPKG _ _ _ Liaisons de point de terminaison attr
26
Le paramètre pbuffer contient un pointeur vers une structure de _ liaisons SecPkgContext qui contient les liaisons de canal pour TLS (RFC 5929).
Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette valeur n’est pas prise en charge.
SECPKG _ _Indicateurs attr
14
Le paramètre pbuffer contient un pointeur vers une structure d' _ indicateurs SecPkgContext .
Retourne des informations sur les indicateurs de contexte négociés.
SECPKG _ _Liste d’émetteurs _ attr _ ex
0x59
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ IssuerListInfoEx .
Retourne une liste d’émetteurs de certificats qui sont acceptés par le serveur.
Cet attribut est pris en charge uniquement par le package de sécuritéSchannel.
SECPKG _ _ _ Informations sur la clé attr
5
Le paramètre pbuffer contient un pointeur vers une structure _ KeyInfo SecPkgContext .
Interroge des informations sur les clés utilisées dans un contexte de sécurité.
SECPKG _ Durée de _ vie
de l’attr
2
Le paramètre pbuffer contient un pointeur vers une structure de durée de _ vie SecPkgContext .
Interroge l’étendue de la durée de vie du contexte.
SECPKG _ ATTR _ _ _ contexte du certificat local
0x54
Le paramètre pbuffer contient un pointeur vers une structure de _ contexte PCCERT.
Recherche un contexte de certificat qui contient un certificat de fin local.
Cet attribut est pris en charge uniquement par le package de sécuritéSchannel.
SECPKG _ attr _ local _ cred
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ LocalCredentialInfo . (obsolète)
Remplacé par SECPKG _ attr _ local _ CERT _ Context.
SECPKG _ _Noms attr
1
Le paramètre pbuffer contient un pointeur vers une structure de _ noms SecPkgContext .
Interroge le nom associé au contexte.
SECPKG _ ATTR _ , _ noms natifs
13
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ NativeNames .
Retourne le nom de principal (CNAMe) du ticket sortant.
SECPKG _ _ _ Informations de négociation d’attr
12
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ NegotiationInfo .
Retourne des informations sur le package de sécurité à utiliser avec le processus de négociation et l’état actuel de la négociation pour l’utilisation de ce package.
SECPKG _ _ _ Informations sur le package attr
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 _ _ _ Expiration du mot de passe attr
8
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ PasswordExpiry .
Retourne les informations d’expiration du mot de passe.
SECPKG _ ATTR _ _ _ contexte du certificat distant
0x53
Le paramètre pbuffer contient un pointeur vers une structure de _ contexte PCCERT.
Recherche un contexte de certificat qui contient le certificat de fin fourni par le serveur.
Cet attribut est pris en charge uniquement par le package de sécuritéSchannel.
SECPKG _ 0x55 _ du _ magasin racine attr
Le paramètre pbuffer contient un pointeur vers HCERTCONTEXT. Recherche un contexte de certificat qui contient un certificat fourni par le magasin racine.
SECPKG _ _ _ Informations de session attr
0x5d
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ SessionInfo .
Retourne des informations sur la session.
Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette valeur n’est pas prise en charge.
SECPKG _ _ _ Clé de session d’attr
9
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ SessionKey .
Retourne des informations sur la clé de sessions.
SECPKG _ _Tailles d’attr
0
Le paramètre pbuffer contient un pointeur vers une structure de _ tailles SecPkgContext .
Interroge les tailles des structures utilisées dans les fonctions par message.
SECPKG _ _ _ Tailles de flux d’attr
4
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ StreamSizes .
Interroge les tailles des différentes parties d’un flux utilisé dans les fonctions par message.
SECPKG _ ATTR _ _ signatures prises en charge
0x66
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ SupportedSignatures .
Cette valeur retourne des informations sur les types de signature pris en charge pour la connexion.
Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette valeur n’est pas prise en charge.
SECPKG _ _ _ Informations sur la cible d’attr
17
Le paramètre pbuffer contient un pointeur vers une structure SecPkgContext _ TargetInformation .
Retourne des informations sur le nom du serveur distant.
SECPKG _ _ _ Liaisons uniques attr
25
Le paramètre pbuffer contient un pointeur vers une structure de _ liaisons SecPkgContext qui contient des informations de liaison de canal.
Windows server 2008, Windows Vista, Windows server 2003 et Windows XP : Cette valeur n’est pas prise en charge.
SECPKG _ _ _ Protocole d’APPLICATION attr
35
Le paramètre pbuffer contient un protocole d’application négocié.
SECPKG _ _DTLS _ MTU
34
Définit et récupère la valeur MTU (unité de transmission maximale) à utiliser avec DTLS. Si DTLS n’est pas activé dans un contexte de sécurité, cet attribut n’est pas pris en charge.
Les valeurs valides sont comprises entre 200 octets et 64 kilo-octets. La valeur MTU DTLS par défaut dans Schannel est de 1096 octets.

pbuffer [ à]

Pointeur vers une structure qui reçoit les attributs. Le type de structure pointé dépend de la valeur spécifiée dans le paramètre ulAttribute .

Valeur retournée

Si la fonction s’exécute correctement, la valeur de retour est s _ E _ OK.

Si la fonction échoue, la valeur de retour est un code d’erreur différent de zéro.

Remarques

La structure vers laquelle pointe le paramètre pbuffer varie en fonction de l’attribut interrogé. L’appelant doit allouer la structure pbuffer elle-même, mais le SSP alloue la mémoire nécessaire pour contenir les membres de taille variable de la structure pbuffer . Lorsque vous avez fini d’utiliser la mémoire allouée par le SSP, libérez-la en appelant la fonction FreeContextBuffer .

Après la lecture du contexte de certificat _ distant attr SECPKG ou de la _ valeur de contexte de _ _ _ certificat local SECPKG attr _ _ _ , le membre hCertStore est défini sur un handle vers un magasin de certificats qui contient les certificats intermédiaires, le cas échéant. En outre, l’application est responsable de l’appel de CertFreeCertificateContext pour libérer la mémoire utilisée par le contexte de certificat.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 8.1 les [ applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2012 [Applications de bureau R2 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

contexte du certificat _

FreeContextBuffer

_Autorité SecPkgContext

SecPkgContext _ ConnectionInfo

SecPkgContext _ DceInfo

SecPkgContext _ IssuerListInfoEx

SecPkgContext _ KeyInfo

Durée de _ vie SecPkgContext

Noms de SecPkgContext _

Tailles de SecPkgContext _

SecPkgContext _ StreamSizes