Freigeben über


QueryContextAttributesA-Funktion (sspi.h)

Mit der QueryContextAttributes (CredSSP)--Funktion kann eine Transportanwendung den Credential Security Support Provider (CredSSP) Sicherheitspaket abfragen, für bestimmte Attribute eines Sicherheitskontexts.

Syntax

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

Parameter

[in] phContext

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

[in] ulAttribute

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 verpackte 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"->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_PackageInfo"->SecPkgContext_PackageInfo Struktur.

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.

[out] pBuffer

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.

Zurückgeben von Code/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 erforderlich sind, um Elemente der pBuffer--Struktur in variabler Größe zu speichern. Der vom SSP zugewiesene Speicher muss durch Aufrufen der FreeContextBuffer-Funktion freigegeben werden.

Anmerkung

Der Header "sspi.h" definiert QueryContextAttributes als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2008 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- sspi.h (include Security.h)
Library Secur32.lib
DLL- Secur32.dll

Siehe auch

CERT_CONTEXT

FreeContextBuffer

SSPI-Funktionen

SecPkgContext_ClientCreds

SecPkgContext_Sizes