Función SeQueryInformationToken (ntifs.h)
La rutina SeQueryInformationToken recupera un tipo de información especificado sobre un token de acceso. El proceso de llamada debe tener los derechos de acceso adecuados para obtener la información.
Sintaxis
NTSTATUS SeQueryInformationToken(
[in] PACCESS_TOKEN Token,
[in] TOKEN_INFORMATION_CLASS TokenInformationClass,
[out] PVOID *TokenInformation
);
Parámetros
[in] Token
Puntero a un token de acceso desde el que se va a recuperar la información. Si tokenInformationClass está establecido en tokenSource, el identificador debe tener acceso TOKEN_QUERY_SOURCE. Para todos los demás valores de TokenInformationClass, el identificador debe tener acceso TOKEN_QUERY.
[in] TokenInformationClass
Valor del TOKEN_INFORMATION_CLASS tipo enumerado que identifica el tipo de información que se va a recuperar.
[out] TokenInformation
Si se devuelve STATUS_SUCCESS, TokenInformation recibe un puntero a una ubicación que contiene la dirección de un búfer que contiene la información solicitada. El formato de este búfer de información depende del valor de TokenInformationClass, como se muestra en la tabla siguiente. Tenga en cuenta que el búfer se asigna mediante seQueryInformationToken del grupo paginado. El autor de la llamada debe liberar este búfer con ExFreePool.
Valor | Descripción |
---|---|
tokenDefaultDacl | El búfer recibe una estructura TOKEN_DEFAULT_DACL que contiene la DACL predeterminada para los objetos recién creados. |
tokenGroups | El búfer recibe una estructura de TOKEN_GROUPS que contiene las cuentas de grupo asociadas al token. |
tokenImpersonationLevel | El búfer recibe un SECURITY_IMPERSONATION_LEVEL valor que indica el nivel de suplantación del token. Si el token de acceso no es un token de suplantación, se produce un error en la llamada a SeQueryInformationToken. |
tokenOwner | El búfer recibe una estructura TOKEN_OWNER que contiene el identificador de seguridad de propietario predeterminado (SID) para los objetos recién creados. |
tokenPrimaryGroup | El búfer recibe una estructura de TOKEN_PRIMARY_GROUP que contiene el SID de grupo principal predeterminado para los objetos recién creados. |
tokenPrivileges | El búfer recibe una estructura TOKEN_PRIVILEGES que contiene los privilegios del token. |
tokenSessionId de | El búfer recibe un valor DWORD (no un puntero a él) que indica el identificador de sesión de Terminal Services asociado al token. Si el token está asociado a la sesión de consola de Terminal Server, el identificador de sesión es cero. Un identificador de sesión distinto de cero indica una sesión de cliente de Terminal Services. En un entorno que no es de Terminal Services, el identificador de sesión es cero. |
tokenSource de | El búfer recibe una estructura TOKEN_SOURCE que contiene el origen del token. TOKEN_QUERY_SOURCE acceso es necesario para recuperar esta información. |
TokenStatistics | El búfer recibe una estructura de TOKEN_STATISTICS que contiene varias estadísticas de token. |
tokenType de | El búfer recibe un valor de TOKEN_TYPE que indica si el token es un token principal o de suplantación. |
TokenUser | El búfer recibe una estructura de TOKEN_USER que contiene la cuenta de usuario del token. |
tokenIntegrityLevel | El búfer recibe un valor DWORD (no un puntero a él) que especifica el nivel de integridad del token. |
Valor devuelto
Código devuelto | Descripción |
---|---|
|
La llamada a SeQueryInformationToken se realizó correctamente. |
|
Se proporcionó un valor no válido para TokenInformationClass. |
Observaciones
Para obtener más información sobre la seguridad y el control de acceso, consulte modelo de seguridad de Windows para desarrolladores de controladores y la documentación sobre estos temas en Windows SDK.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 |
de la plataforma de destino de | Universal |
encabezado de | ntifs.h (incluya Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | PASSIVE_LEVEL |