Funzione QueryContextAttributesExA (sspi.h)

Consente a un'applicazione di trasporto di eseguire query su un pacchetto di sicurezza per determinati attributi di un contesto di sicurezza.

Sintassi

SECURITY_STATUS SEC_ENTRY QueryContextAttributesExA(
  [in]  PCtxtHandle   phContext,
  [in]  unsigned long ulAttribute,
  [out] void          *pBuffer,
  [in]  unsigned long cbBuffer
);

Parametri

[in] phContext

Handle per il contesto di sicurezza su cui eseguire query.

[in] ulAttribute

Specifica l'attributo del contesto da restituire. Questo parametro può avere uno dei valori seguenti.

Valore Significato
SECPKG_ATTR_ACCESS_TOKEN
18
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_AccessToken .

Restituisce un handle al token di accesso.

SECPKG_ATTR_APP_DATA
0x5e
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_SessionAppData .

Restituisce o specifica i dati dell'applicazione per la sessione.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_AUTHORITY
6
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Authority .

Esegue una query sul nome dell'autorità di autenticazione.

SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
27
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_ClientSpecifiedTarget che rappresenta il nome dell'entità servizio (SPN) della destinazione iniziale fornita dal client.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_CONNECTION_INFO
0x5a
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_ConnectionInfo .

Restituisce informazioni dettagliate sulla connessione stabilita.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_CREDS_2
0x80000086
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_ClientCreds che specifica le credenziali client.

Se le credenziali client sono nome utente e password, il buffer è una struttura di KERB_INTERACTIVE_LOGON compressa.

Se la credenziale client è il nome utente e il PIN della smart card, il buffer è una struttura di KERB_CERTIFICATE_LOGON compressa.

Se le credenziali client sono credenziali di identità online, il buffer è una struttura di SEC_WINNT_AUTH_IDENTITY_EX2 di marshalling.

Questo attributo è supportato solo nel server CredSSP.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_DCE_INFO
3
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_DceInfo .

Query per i dati di autorizzazione usati dai servizi DCE.

SECPKG_ATTR_ENDPOINT_BINDINGS
26
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Bindings che specifica le informazioni sull'associazione del canale.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_EAP_KEY_BLOCK
0x5b
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_EapKeyBlock .

Query per i dati chiave usati dal protocollo TLS EAP.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_FLAGS
14
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Flags .

Restituisce informazioni sui flag di contesto negoziati.

SECPKG_ATTR_ISSUER_LIST_EX
0x59
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_IssuerListInfoEx .

Restituisce un elenco di autorità emittenti di certificati accettate dal server.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_KEY_INFO
5
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_KeyInfo .

Esegue una query sulle chiavi usate in un contesto di sicurezza.

SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
30
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_LastClientTokenStatus che specifica se il token dalla chiamata più recente alla funzione InitializeSecurityContext è l'ultimo token del client.

Questo valore è supportato solo dai pacchetti di sicurezza Negotiate, Kerberos e NTLM.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_LIFESPAN
2
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Lifespan .

Esegue una query sull'intervallo di vita del contesto.

SECPKG_ATTR_LOCAL_CERT_CONTEXT
0x54
Il parametro pBuffer contiene un puntatore a una struttura PCCERT_CONTEXT .

Trova un contesto di certificato che contiene un certificato finale locale.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_LOCAL_CRED
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_LocalCredentialInfo . (obsoleto)

Sostituito da SECPKG_ATTR_LOCAL_CERT_CONTEXT.

SECPKG_ATTR_NAMES
1
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Names .

Esegue una query sul nome associato al contesto.

SECPKG_ATTR_NATIVE_NAMES
13
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_NativeNames .

Restituisce il nome dell'entità (CNAME) dal ticket in uscita.

SECPKG_ATTR_NEGOTIATION_INFO
12
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_NegotiationInfo .

Restituisce informazioni sul pacchetto di sicurezza da utilizzare con il processo di negoziazione e lo stato corrente della negoziazione per l'uso di tale pacchetto.

SECPKG_ATTR_PACKAGE_INFO
10
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_PackageInfo .

Restituisce informazioni sul provider di servizi condivisi in uso.

SECPKG_ATTR_PASSWORD_EXPIRY
8
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_PasswordExpiry .

Restituisce le informazioni sulla scadenza della password.

SECPKG_ATTR_REMOTE_CERT_CONTEXT
0x53
Il parametro pBuffer contiene un puntatore a una struttura PCCERT_CONTEXT .

Trova un contesto di certificato che contiene il certificato finale fornito dal server.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_ROOT_STORE
0x55
Il parametro pBuffer contiene un puntatore a un HCERTCONTEXT. Trova un contesto di certificato che contiene un certificato fornito dall'archivio radice.
SECPKG_ATTR_SESSION_KEY
9
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_SessionKey .

Restituisce informazioni sulle chiavi della sessione.

SECPKG_ATTR_SESSION_INFO
0x5d
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_SessionInfo .

Restituisce informazioni sulla sessione.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_SIZES
0
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Sizes .

Esegue una query sulle dimensioni delle strutture usate nelle funzioni per messaggio.

SECPKG_ATTR_STREAM_SIZES
4
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_StreamSizes .

Esegue una query sulle dimensioni delle varie parti di un flusso usato nelle funzioni per messaggio.

Questo attributo è supportato solo dal pacchetto di sicurezza Schannel.

SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
124
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_SubjectAttributes .

Questo valore restituisce informazioni sugli attributi di sicurezza per la connessione.

Questo valore è supportato solo nel server CredSSP.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_SUPPORTED_SIGNATURES
0x66
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_SupportedSignatures .

Questo valore restituisce informazioni sui tipi di firma supportati per la connessione.

Questo valore è supportato solo dal pacchetto di sicurezza Schannel.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

SECPKG_ATTR_TARGET_INFORMATION
17
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_TargetInformation .

Restituisce informazioni sul nome del server remoto.

SECPKG_ATTR_UNIQUE_BINDINGS
25
Il parametro pBuffer contiene un puntatore a una struttura SecPkgContext_Bindings che specifica le informazioni sull'associazione del canale.

Questo valore è supportato solo dal pacchetto di sicurezza Schannel.

Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo valore non è supportato.

[out] pBuffer

Puntatore a una struttura che riceve gli attributi. Il tipo di struttura a cui punta dipende dal valore specificato nel parametro ulAttribute .

[in] cbBuffer

Dimensione, in byte, del parametro pBuffer .

Valore restituito

Se la funzione ha esito positivo, il valore restituito viene SEC_E_OK.

Se la funzione ha esito negativo, il valore restituito è un codice di errore diverso da zero.

Commenti

Nota

L'intestazione sspi.h definisce QueryContextAttributesEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione sspi.h (include Security.h)
Libreria Secur32.lib
DLL Secur32.dll

Vedi anche

CERT_CONTEXT

FreeContextBuffer

Funzioni SSPI

SecPkgContext_Authority

SecPkgContext_ConnectionInfo

SecPkgContext_DceInfo

SecPkgContext_IssuerListInfoEx

SecPkgContext_KeyInfo

SecPkgContext_Lifespan

SecPkgContext_Names

SecPkgContext_Sizes

SecPkgContext_StreamSizes