SeQueryInformationToken-Funktion (ntifs.h)
Die SeQueryInformationToken Routine ruft einen bestimmten Informationstyp zu einem Zugriffstoken ab. Der Anrufvorgang muss über geeignete Zugriffsrechte verfügen, um die Informationen zu erhalten.
Syntax
NTSTATUS SeQueryInformationToken(
[in] PACCESS_TOKEN Token,
[in] TOKEN_INFORMATION_CLASS TokenInformationClass,
[out] PVOID *TokenInformation
);
Parameter
[in] Token
Ein Zeiger auf ein Zugriffstoken, aus dem Informationen abgerufen werden sollen. Wenn TokenInformationClass- auf TokenSource-festgelegt ist, muss das Handle über TOKEN_QUERY_SOURCE Zugriff verfügen. Für alle anderen TokenInformationClass--Werte muss das Handle über TOKEN_QUERY Zugriff verfügen.
[in] TokenInformationClass
Ein Wert aus dem aufgezählten Typ TOKEN_INFORMATION_CLASS, der den abzurufenden Informationstyp identifiziert.
[out] TokenInformation
Wenn STATUS_SUCCESS zurückgegeben wird, empfängt TokenInformation einen Zeiger auf einen Speicherort, der die Adresse eines Puffers enthält, der die angeforderten Informationen enthält. Das Format dieses Informationspuffers hängt vom Wert TokenInformationClassab, wie in der folgenden Tabelle dargestellt. Beachten Sie, dass der Puffer von SeQueryInformationToken aus dem ausgelagerten Pool zugewiesen wird. Dieser Puffer muss schließlich vom Aufrufer mithilfe ExFreePool-freigegeben werden.
Wert | Beschreibung |
---|---|
TokenDefaultDacl- | Der Puffer empfängt eine TOKEN_DEFAULT_DACL Struktur, die die Standard-DACL für neu erstellte Objekte enthält. |
TokenGroups | Der Puffer empfängt eine TOKEN_GROUPS Struktur, die die dem Token zugeordneten Gruppenkonten enthält. |
TokenImpersonationLevel- | Der Puffer empfängt einen SECURITY_IMPERSONATION_LEVEL Wert, der die Identitätswechselebene des Tokens angibt. Wenn das Zugriffstoken kein Identitätswechseltoken ist, schlägt der Aufruf von SeQueryInformationToken fehl. |
TokenOwner- | Der Puffer empfängt eine TOKEN_OWNER Struktur, die den Standardbenutzersicherheitsbezeichner (SID-) für neu erstellte Objekte enthält. |
TokenPrimaryGroup- | Der Puffer empfängt eine TOKEN_PRIMARY_GROUP Struktur, die die standard-primäre Gruppen-SID für neu erstellte Objekte enthält. |
TokenPrivileges | Der Puffer empfängt eine TOKEN_PRIVILEGES Struktur, die die Berechtigungen des Tokens enthält. |
TokenSessionId- | Der Puffer empfängt einen DWORD- Wert (kein Zeiger darauf), der den Sitzungsbezeichner für Terminaldienste angibt, der dem Token zugeordnet ist. Wenn das Token der TerminalServer-Konsolensitzung zugeordnet ist, ist der Sitzungsbezeichner null. Ein Nichtzero-Sitzungsbezeichner gibt eine Terminaldienste-Clientsitzung an. In einer Umgebung ohne Terminaldienste ist der Sitzungsbezeichner null. |
TokenSource- | Der Puffer empfängt eine TOKEN_SOURCE Struktur, die die Quelle des Tokens enthält. TOKEN_QUERY_SOURCE Zugriff ist erforderlich, um diese Informationen abzurufen. |
TokenStatistics- | Der Puffer empfängt eine TOKEN_STATISTICS Struktur, die verschiedene Tokenstatistiken enthält. |
TokenType- | Der Puffer empfängt einen TOKEN_TYPE Wert, der angibt, ob das Token ein primäres Token oder Identitätswechseltoken ist. |
TokenUser- | Der Puffer empfängt eine TOKEN_USER Struktur, die das Benutzerkonto des Tokens enthält. |
TokenIntegrityLevel- | Der Puffer empfängt einen DWORD- Wert (kein Zeiger darauf), der die Integritätsebene des Tokens angibt. |
Rückgabewert
Rückgabecode | Beschreibung |
---|---|
|
Der Aufruf von SeQueryInformationToken erfolgreich. |
|
Für TokenInformationClass-wurde ein ungültiger Wert angegeben. |
Bemerkungen
Weitere Informationen zur Sicherheits- und Zugriffssteuerung finden Sie unter Windows-Sicherheitsmodell für Treiberentwickler und die Dokumentation zu diesen Themen im Windows SDK.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 2000 |
Zielplattform- | Universal |
Header- | ntifs.h (einschließlich Ntifs.h) |
Library | NtosKrnl.lib |
DLL- | NtosKrnl.exe |
IRQL- | PASSIVE_LEVEL |