Fonction QueryContextAttributes (NTLM)
La fonction QueryContextAttributes (NTLM) permet à une application de transport d’interroger le package de sécurité NTLM 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]
-
Spécifie l’attribut du contexte à retourner. Ce paramètre peut prendre les valeurs suivantes.
Valeur Signification - SECPKG_ATTR_ACCESS_TOKEN
- 18
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_AccessToken .
Retourne un handle au jeton d’accès.- 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_CLIENT_SPECIFIED_TARGET
- 27
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_ClientSpecifiedTarget qui représente le nom du principal du service (SPN) de la cible initiale fournie par le client.
Cette valeur est prise en charge uniquement lors de l’utilisation de liaisons de canal.
Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cette valeur n’est pas prise en charge.- 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_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_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_KEY_INFO
- 5
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_KeyInfo .
Interroge les informations sur les clés utilisées dans un contexte de sécurité.- SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
- 30
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_LastClientTokenStatus qui spécifie si le jeton de l’appel le plus récent à la fonction InitializeSecurityContext est le dernier jeton du client.
Windows Server 2008, Windows Vista, Windows Server 2003 et Windows XP : Cette valeur n’est pas prise en charge.- SECPKG_ATTR_LIFESPAN
- 2
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_Lifespan .
Interroge la durée de vie du contexte.- 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 principal (CNAME) 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_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_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_TARGET_INFORMATION
- 17
Le paramètre pBuffer contient un pointeur vers une structure SecPkgContext_TargetInformation .
Retourne des informations sur le nom du serveur distant. -
pBuffer [out]
-
Pointeur vers une structure qui reçoit les attributs. Le type de structure pointée vers dépend de la valeur spécifiée dans le paramètre ulAttribute .
Valeur retournée
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.
Notes
La structure pointée vers 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 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 peut être libérée en appelant la fonction FreeContextBuffer .
Une fois la valeur SECPKG_ATTR_REMOTE_CERT_CONTEXT ou SECPKG_ATTR_LOCAL_CERT_CONTEXT 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
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows Server 2003 [applications de bureau uniquement] |
En-tête |
|
Bibliothèque |
|
DLL |
|
Noms Unicode et ANSI |
QueryContextAttributesW (Unicode) et QueryContextAttributesA (ANSI) |
Voir aussi