Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
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 [in]
-
Handle vers le contexte de sécurité à interroger.
-
ulAttribute [in]
-
Spécifie l’attribut du contexte à renvoyer. Ce paramètre peut être l’une des valeurs suivantes.
Valeur Sens - SECPKG_ATTR_ACCESS_TOKEN
- 13
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_AccessToken .
Retourne un handle au jeton d’accès.- SECPKG_ATTR_APP_DATA
- 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_ATTR_AUTHORITY
- 6
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Authority .
Interroge le nom de l’autorité d’authentification.- SECPKG_ATTR_CIPHER_INFO
- 0x64
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_CipherInfo .
Retourne une nouvelle structure d’informations de chiffrement CNG.- SECPKG_ATTR_CONNECTION_INFO
- 0x5a
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_ConnectionInfo .
Retourne des informations détaillées sur la connexion établie.- SECPKG_ATTR_KEYING_MATERIAL
- 0x6b
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_KeyingMaterial . La fonctionnalité d’exportation de matériel de clé suit la norme RFC 5705.
Interrogation de cet attribut avant que le secret principal ait été généré ou avant que l’attribut SECPKG_ATTR_KEYING_MATERIAL_INFO ait été défini avec un résultat d’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_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 de carte à puce, la mémoire tampon est une structure de 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_DCE_INFO
- 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_EAP_KEY_BLOCK
- 0x5b
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_EapKeyBlock .
Requêtes pour les données clés utilisées par le protocole TLS EAP.
Cet attribut est pris en charge uniquement par le package de sécurité Schannel.- SECPKG_ATTR_ENDPOINT_BINDINGS
- 26
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Bindings 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_ATTR_FLAGS
- 14
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Flags .
Retourne des informations sur les indicateurs de contexte négociés.- SECPKG_ATTR_ISSUER_LIST_EX
- 0x59
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_IssuerListInfoEx .
Retourne la liste des émetteurs de certificat acceptés par le serveur.
Cet attribut est pris en charge uniquement par le package de sécurité Schannel.- SECPKG_ATTR_KEY_INFO
- 5
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_KeyInfo .
Interroge des informations sur les clés utilisées dans un contexte de sécurité.- SECPKG_ATTR_LIFESPAN
- 2
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Lifespan .
Interroge l’étendue de vie du contexte.- SECPKG_ATTR_LOCAL_CERT_CONTEXT
- 0x54
Le paramètre pBuffer contient un pointeur vers une structure PCCERT_CONTEXT.
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_ATTR_NAMES
- 1
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Names .
Interroge le nom associé au contexte.- SECPKG_ATTR_NATIVE_NAMES
- 13
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_NativeNames .
Retourne le nom du principal (CNAME) à partir du ticket sortant.- SECPKG_ATTR_NEGOTIATION_INFO
- 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_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_PASSWORD_EXPIRY
- 8
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_PasswordExpiry .
Retourne les informations d’expiration du mot de passe.- SECPKG_ATTR_REMOTE_CERT_CONTEXT
- 0x53
Le paramètre pBuffer contient un pointeur vers une structure PCCERT_CONTEXT.
Recherche un contexte de certificat qui contient le certificat final fourni par le serveur.
Cet attribut est pris en charge uniquement par le package de sécurité Schannel.- SECPKG_ATTR_ROOT_STORE
- 0x55
Le paramètre pBuffer contient un pointeur vers un HCERTCONTEXT. Recherche un contexte de certificat qui contient un certificat fourni par le magasin racine. - SECPKG_ATTR_SESSION_INFO
- 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_ATTR_SESSION_KEY
- 9
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_SessionKey .
Retourne des informations sur les clés de session.- SECPKG_ATTR_SIZES
- 0
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Sizes .
Interroge les tailles des structures utilisées dans les fonctions par message.- SECPKG_ATTR_STREAM_SIZES
- 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_SUPPORTED_SIGNATURES
- 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_ATTR_TARGET_INFORMATION
- 17
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_TargetInformation .
Retourne des informations sur le nom du serveur distant.- SECPKG_ATTR_UNIQUE_BINDINGS
- 25
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Bindings 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_ATTR_APPLICATION_PROTOCOL
- 35
Le paramètre pBuffer contient un protocole d’application négocié. - SECPKG_ATTR_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 1 096 octets. -
pBuffer [out]
-
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 de retour
Si la fonction réussit, la valeur de retour est SEC_E_OK.
Si la fonction échoue, la valeur de retour est un code d’erreur différent de zéro.
Remarques
La structure pointée par le paramètre pBuffer varie en fonction de l’attribut interrogé. L’appelant doit allouer la structure pBuffer elle-même, mais le fournisseur de services partagés alloue toute 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 fournisseur de services partagés, libérez-la en appelant la fonction FreeContextBuffer .
Une fois que la valeur SECPKG_ATTR_REMOTE_CERT_CONTEXT ou SECPKG_ATTR_LOCAL_CERT_CONTEXT a été lue, le membre hCertStore est défini sur un handle sur un magasin de certificats qui contient les certificats intermédiaires, le cas échéant. En outre, l’application est chargée d’appeler CertFreeCertificateContext pour libérer la mémoire utilisée par le contexte de certificat.
Spécifications
| Besoin | Valeur |
|---|---|
| Client minimum pris en charge |
Windows 8.1 [applications de bureau uniquement] |
| Serveur minimum pris en charge |
Windows Server 2012 R2 [applications de bureau uniquement] |
| En-tête de page |
|
| Bibliothèque |
|
| DLL |
|
| Noms Unicode et ANSI |
QueryContextAttributesW (Unicode) et QueryContextAttributesA (ANSI) |
Voir aussi