Freigeben über


QueryContextAttributes (General)-Funktion

Ermöglicht einer Transportanwendung das Abfragen eines Sicherheitspakets für bestimmte Attribute eines Sicherheitskontexts.

Informationen zur Verwendung dieser Funktion mit einem bestimmten SSP (Security Support Provider ) finden Sie in den folgenden Themen.

Thema Beschreibung
QueryContextAttributes (CredSSP) Ermöglicht es einer Transportanwendung, den Credential Security Support Provider (CredSSP) nach bestimmten Attributen eines Sicherheitskontextsabzufragen.
QueryContextAttributes (Digest) Ermöglicht es einer Transportanwendung, das Digest-Sicherheitspaket für bestimmte Attribute eines Sicherheitskontextsabzufragen.
QueryContextAttributes (Kerberos) Ermöglicht es einer Transportanwendung, das Kerberos-Sicherheitspaket für bestimmte Attribute eines Sicherheitskontextsabzufragen.
QueryContextAttributes (Negotiate) Ermöglicht es einer Transportanwendung, das Sicherheitspaket Negotiate nach bestimmten Attributen eines Sicherheitskontextsabzufragen.
QueryContextAttributes (NTLM) Ermöglicht einer Transportanwendung das Abfragen des NTLM-Sicherheitspakets für bestimmte Attribute eines Sicherheitskontexts.
QueryContextAttributes (Schannel) Ermöglicht es einer Transportanwendung, das Schannel-Sicherheitspaket nach bestimmten Attributen eines Sicherheitskontextsabzufragen.

Syntax

SECURITY_STATUS SEC_ENTRY QueryContextAttributes(
  _In_  PCtxtHandle phContext,
  _In_  ULONG       ulAttribute,
  _Out_ PVOID       pBuffer
);

Parameter

phContext [in]

Ein Ziehpunkt für den Sicherheitskontext abgefragt werden soll.

ulAttribute [in]

Gibt das Attribut des zurückzugebenden Kontexts an. Dieser Parameter kann einen der folgenden Werte annehmen.

Wert Bedeutung
SECPKG_ATTR_ACCESS_TOKEN
18
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_AccessToken-Struktur.
Gibt einen Ziehpunkt an das Zugriffstoken zurück.
SECPKG_ATTR_APP_DATA
0x5E
Der pBuffer-Paramenter enthält einen Zeiger auf eine SecPkgContext_SessionAppData-Struktur.
Gibt Anwendungsdaten für die Sitzung zurück oder gibt diese an.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_AUTHORITY
6
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Authority-Struktur.
Fragt den Namen der Authentifizierungsautorität ab.
SECPKG_ATTR_CLIENT_SPECIFIED_TARGET
27
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_ClientSpecifiedTarget Struktur, die den Dienstprinzipalnamen (SPN) des ursprünglich vom Client bereitgestellten Ziels darstellt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_CONNECTION_INFO
0x5a
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_ConnectionInfo-Struktur.
Gibt detaillierte Informationen zur hergestellten Verbindung zurück.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_CREDS_2
0x80000086
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_ClientCreds Struktur, die Clientanmeldeinformationen angibt.
Wenn die Clientanmeldeinformationen aus Benutzernamen und Kennwort bestehen, ist der Puffer eine verpackte KERB_INTERACTIVE_LOGON-Struktur.
Wenn die Clientanmeldeinformationen aus Benutzernamen und Smartcard-PIN bestehen, ist der Puffer eine gepackte KERB_CERTIFICATE_LOGON-Struktur.
Wenn es sich bei den Clientanmeldeinformationen um eine Onlinei-Identität handelt, ist der Puffer eine gemarstische SEC_WINNT_AUTH_IDENTITY_EX2 Struktur.
Dieses Attribut wird nur auf dem CredSSP-Server unterstützt.
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_DCE_INFO
3
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_DceInfo-Struktur.
Abfragen nach Autorisierungsdaten, die von DCE-Diensten verwendet werden.
SECPKG_ATTR_ENDPOINT_BINDINGS
26
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Bindings-Struktur, die Kanalbindungsinformationen angibt.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_EAP_KEY_BLOCK
0x5b
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_EapKeyBlock-Struktur.
Abfragen nach Schlüsseldaten, die vom EAP TLS-Protokoll verwendet werden.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_FLAGS
14
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Flags-Struktur.
Gibt Informationen zu den ausgehandelten Kontextkennzeichnungen zurück.
SECPKG_ATTR_ISSUER_LIST_EX
0x59
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_IssuerListInfoEx-Struktur.
Gibt eine Liste der Zertifikataussteller zurück, die vom Server akzeptiert werden.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_KEY_INFO
5
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_KeyInfo-Struktur.
Fragt Informationen zu den Schlüsseln ab, die in einem Sicherheitskontext verwendet werden.
SECPKG_ATTR_LAST_CLIENT_TOKEN_STATUS
30
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_LastClientTokenStatus-Struktur, die angibt, ob das Token aus dem letzten Aufruf der InitializeSecurityContext-Funktion das letzte Token vom Client ist.
Dieser Wert wird nur von den Sicherheitspaketen Negotiate, Kerberos und NTLM unterstützt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_LIFESPAN
2
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Lifespan-Struktur.
Fragt die Lebensdauer des Kontexts ab.
SECPKG_ATTR_LOCAL_CERT_CONTEXT
0x54
Der pBuffer-Parameter enthält einen Zeiger auf eine PCCERT_CONTEXT-Struktur.
Sucht einen Zertifikatkontext, der ein lokales Endzertifikat enthält.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_LOCAL_CRED
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_LocalCredentialInfo-Struktur. (Veraltet)
Abgelöst von SECPKG_ATTR_LOCAL_CERT_CONTEXT.
SECPKG_ATTR_NAMES
1
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Names-Struktur.
Fragt den mit dem Kontext verbundenen Namen ab.
SECPKG_ATTR_NATIVE_NAMES
13
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_NativeNames-Struktur.
Gibt den Prinzipalnamen (CNAME) aus dem ausgehenden Ticket zurück.
SECPKG_ATTR_NEGOTIATION_INFO
12
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_NegotiationInfo-Struktur.
Gibt Informationen über das Sicherheitspaket zurück, das mit dem Aushandlungsprozess und dem aktuellen Status der Aushandlung für die Verwendung dieses Pakets verwendet werden soll.
SECPKG_ATTR_PACKAGE_INFO
10
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_PackageInfo-Struktur.
Gibt Informationen zum verwendeten SSP zurück.
SECPKG_ATTR_PASSWORD_EXPIRY
8
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_PasswordExpiry-Struktur.
Gibt Kennwortablaufinformationen zurück.
SECPKG_ATTR_REMOTE_CERT_CONTEXT
0x53
Der pBuffer-Parameter enthält einen Zeiger auf eine PCCERT_CONTEXT-Struktur.
Sucht einen Zertifikatkontext, der das vom Server bereitgestellte Endzertifikat enthält.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_ROOT_STORE
0x55
Der pBuffer-Parameter enthält einen Zeiger auf einen HCERTCONTEXT. Sucht einen Zertifikatkontext, der ein vom Stammspeicher bereitgestelltes Zertifikat enthält.
SECPKG_ATTR_SESSION_KEY
9
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_SessionKey-Struktur.
Gibt Informationen zu den Sitzungsschlüsseln zurück.
SECPKG_ATTR_SESSION_INFO
0x5D
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_SessionInfo-Struktur.
Gibt Informationen zur Sitzung zurück.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_SIZES
0
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Sizes-Struktur.
Fragt die Größe der Strukturen ab, die in den Nachrichtenfunktionen verwendet werden.
SECPKG_ATTR_STREAM_SIZES
4
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_StreamSizes-Struktur.
Fragt die Größe der verschiedenen Teile eines Datenstroms ab, die in den Nachrichtenfunktionen verwendet werden.
Dieses Attribut wird nur vom Schannel-Sicherheitspaket unterstützt.
SECPKG_ATTR_SUBJECT_SECURITY_ATTRIBUTES
124
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_SubjectAttributes-Struktur.
Dieser Wert gibt Informationen zu den Sicherheitsattributen für die Verbindung zurück.
Dieser Wert wird nur auf dem CredSSP-Server unterstützt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_SUPPORTED_SIGNATURES
0x66
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_SupportedSignatures-Struktur.
Dieser Wert gibt Informationen zu den Signaturtypen zurück, die für die Verbindung unterstützt werden.
Dieser Wert wird nur von der eingeschränkten Schannel-Delegierung unterstützt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.
SECPKG_ATTR_TARGET_INFORMATION
17
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_TargetInformation-Struktur.
Gibt Informationen zum Namen des Remoteservers zurück.
SECPKG_ATTR_UNIQUE_BINDINGS
25
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Bindings-Struktur, die Kanalbindungsinformationen angibt.
Dieser Wert wird nur von der eingeschränkten Schannel-Delegierung unterstützt.
Windows Server 2008, Windows Vista, Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt.

 

pBuffer [out]

Ein Zeiger auf eine Struktur, die die Attribute empfängt. Der Typ der Struktur, auf die verwiesen wird, hängt vom Wert ab, der im ulAttribute-Parameter angegeben ist.

Rückgabewert

Wenn die Funktion erfolgreich ist, lautet der Rückgabewert SEC_E_OK.

Wenn die Funktion fehlschlägt, ist der Rückgabewert ein Fehlercode ungleich Null.

Hinweise

Die Struktur, auf die der pBuffer-Parameter verweist, variiert je nach abgefragten Attribut. Der Aufrufer muss die pBuffer-Struktur selbst zuweisen, aber der SSP weist den Speicher zu, der benötigt wird, um die Mitglieder der pBuffer-Struktur in variabler Größe zu halten. Der vom SSP zugewiesene Speicher kann durch Aufrufen der FreeContextBuffer-Funktion freigegeben werden.

Nachdem der Wert SECPKG_ATTR_REMOTE_CERT_CONTEXT oder SECPKG_ATTR_LOCAL_CERT_CONTEXT gelesen wurde, wird das hCertStore-Mitglied auf einen Ziehpunkt zu einem Zertifikatspeicher gesetzt, der die Zwischenzertifikate enthält, falls vorhanden. Außerdem ist die Anwendung für das Aufrufen von CertFreeCertificateContext verantwortlich, um den vom Zertifikatkontext verwendeten Speicher freizugeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
Header
Sspi.h (einschließlich Security.h)
Bibliothek
Secur32.lib
DLL
Secur32.dll
Unicode- und ANSI-Namen
QueryContextAttributesW (Unicode) und QueryContextAttributesA (ANSI)

Siehe auch

SSPI-Funktionen

Unterstützen des erweiterten Schutzes für die Authentifizierung (EPA) in einem Dienst

CERT_CONTEXT

FreeContextBuffer

SecPkgContext_Authority

SecPkgContext_ConnectionInfo

SecPkgContext_DceInfo

SecPkgContext_IssuerListInfoEx

SecPkgContext_KeyInfo

SecPkgContext_Lifespan

SecPkgContext_Names

SecPkgContext_Sizes

SecPkgContext_StreamSizes