Freigeben über


QueryContextAttributes (CredSSP)-Funktion

Mit der QueryContextAttributes (CredSSP) -Funktion kann eine Transportanwendung das Sicherheitspaket für die Unterstützung von Anmeldeinformationen (CredSSP) für bestimmte Attribute eines Sicherheitskontexts abfragen.

Syntax

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

Die Parameter

phContext [in]

Ein Handle für den Sicherheitskontext, der abgefragt werden soll.

ulAttribute [in]

Das Attribut des zurückzugebenden Kontexts. Dieser Parameter kann einer der folgenden Werte sein: Sofern nicht anders angegeben, gelten die Attribute sowohl für den Client als auch für den Server.

Wert Bedeutung
SECPKG_ATTR_C_ACCESS_TOKEN
0x80000012
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_AccessToken Struktur, die das Zugriffstoken für den aktuellen Sicherheitskontext angibt.
Dieses Attribut wird nur auf dem Server unterstützt.
SECPKG_ATTR_C_FULL_ACCESS_TOKEN
0x80000082
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_AccessToken Struktur, die das Zugriffstoken für den aktuellen Sicherheitskontext angibt.
Dieses Attribut wird nur auf dem Server unterstützt.
SECPKG_ATTR_CERT_TRUST_STATUS
0x80000084
Der pBuffer-Parameter enthält einen Zeiger auf eine CERT_TRUST_STATUS Struktur, die Vertrauensinformationen zum Zertifikat angibt.
Dieses Attribut wird nur auf dem Client unterstützt.
SECPKG_ATTR_CREDS
0x80000080
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_ClientCreds Struktur, die Clientanmeldeinformationen angibt.
Die Clientanmeldeinformationen können entweder Benutzername und Kennwort oder Benutzername und Smartcard-PIN sein.
Dieses Attribut wird nur auf dem Server 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 Benutzername und Kennwort sind, ist der Puffer eine gepackte KERB_INTERACTIVE_LOGON Struktur.
Wenn die Clientanmeldeinformationen Benutzername und Smartcard-PIN sind, ist der Puffer eine gepackte KERB_CERTIFICATE_LOGON Struktur.
Wenn es sich bei den Clientanmeldeinformationen um eine Onlineidentität handelt, handelt es sich bei dem Puffer um 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_NEGOTIATION_PACKAGE
0x80000081
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_PackageInfo Struktur, die den Namen des vom Microsoft Negotiate-Anbieter ausgehandelten Authentifizierungspakets angibt.
SECPKG_ATTR_PACKAGE_INFO
10
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_PackageInfoStruktur.
Gibt Informationen zum verwendeten SSP zurück.
SECPKG_ATTR_SERVER_AUTH_FLAGS
0x80000083
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Flags Struktur, die Informationen zu den Flags im aktuellen Sicherheitskontext angibt.
Dieses Attribut wird nur auf dem Client unterstützt.
SECPKG_ATTR_SIZES
0x0
Der pBuffer-Parameter enthält einen Zeiger auf eine SecPkgContext_Sizes Struktur.
Fragt die Größe der Strukturen ab, die in den Nachrichtenfunktionen und Authentifizierungsaustausch verwendet werden.
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.

 

pBuffer [out]

Ein Zeiger auf eine Struktur, die die Attribute empfängt. Der Strukturtyp hängt vom Wert des ulAttribute-Parameters ab.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird SEC_E_OK zurückgegeben.

Wenn die Funktion fehlschlägt, kann sie die folgenden Fehlercodes zurückgeben.

Rückgabecode/-wert BESCHREIBUNG
SEC_E_INVALID_HANDLE
0x80100003
Fehler bei der Funktion. Der phContext-Parameter gibt ein Handle für einen unvollständigen Kontext an.
SEC_E_UNSUPPORTED_FUNCTION
0x80090302
Fehler bei der Funktion. Der Wert des ulAttribute-Parameters ist ungültig.

 

Bemerkungen

Die struktur, auf die der pBuffer-Parameter verweist, variiert je nach abgefragten Attribut.

Während der Aufrufer die pBuffer-Struktur selbst zuordnen muss, weist der SSP alle Speicher zu, die zum Speichern von Membern mit variabler Größe der pBuffer-Struktur erforderlich sind. Der vom SSP zugewiesene Speicher muss durch Aufrufen der FreeContextBuffer-Funktion freigegeben werden.

Anforderungen

Anforderung Wert
Mindest unterstützter Client
Windows Vista [nur Desktop-Apps]
Unterstützter Server (Mindestversion)
Windows Server 2008 [Nur Desktop-Apps]
Kopfzeile
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

CERT_CONTEXT

FreeContextBuffer

SecPkgContext_ClientCreds

SecPkgContext_Sizes