Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The TOKEN_INFORMATION_CLASS enumeration type contains values that specify the type of information being assigned to or retrieved from an access token.
SeQueryInformationToken and ZwQueryInformationToken use TOKEN_INFORMATION_CLASS values to indicate the type of token information to retrieve.
Syntax
typedef enum _TOKEN_INFORMATION_CLASS {
TokenUser,
TokenGroups,
TokenPrivileges,
TokenOwner,
TokenPrimaryGroup,
TokenDefaultDacl,
TokenSource,
TokenType,
TokenImpersonationLevel,
TokenStatistics,
TokenRestrictedSids,
TokenSessionId,
TokenGroupsAndPrivileges,
TokenSessionReference,
TokenSandBoxInert,
TokenAuditPolicy,
TokenOrigin,
TokenElevationType,
TokenLinkedToken,
TokenElevation,
TokenHasRestrictions,
TokenAccessInformation,
TokenVirtualizationAllowed,
TokenVirtualizationEnabled,
TokenIntegrityLevel,
TokenUIAccess,
TokenMandatoryPolicy,
TokenLogonSid,
TokenIsAppContainer,
TokenCapabilities,
TokenAppContainerSid,
TokenAppContainerNumber,
TokenUserClaimAttributes,
TokenDeviceClaimAttributes,
TokenRestrictedUserClaimAttributes,
TokenRestrictedDeviceClaimAttributes,
TokenDeviceGroups,
TokenRestrictedDeviceGroups,
TokenSecurityAttributes,
TokenIsRestricted,
TokenProcessTrustLevel,
TokenPrivateNameSpace,
TokenSingletonAttributes,
TokenBnoIsolation,
TokenChildProcessFlags,
TokenIsLessPrivilegedAppContainer,
TokenIsSandboxed,
TokenIsAppSilo,
TokenLoggingInformation,
TokenLearningMode,
MaxTokenInfoClass
} TOKEN_INFORMATION_CLASS, *PTOKEN_INFORMATION_CLASS;
Constants
TokenUserThe buffer receives a TOKEN_USER structure containing the token's user account. |
TokenGroupsThe buffer receives a TOKEN_GROUPS structure containing the group accounts associated with the token. |
TokenPrivilegesThe buffer receives a TOKEN_PRIVILEGES structure containing the token's privileges. |
TokenOwnerThe buffer receives a TOKEN_OWNER structure containing the default owner SID for newly created objects. |
TokenPrimaryGroupThe buffer receives a TOKEN_PRIMARY_GROUP structure containing the default primary group SID for newly created objects. |
TokenDefaultDaclThe buffer receives a TOKEN_DEFAULT_DACL structure containing the default discretionary ACL (DACL) for newly created objects. |
TokenSourceThe buffer receives a TOKEN_SOURCE structure containing the source of the token. TOKEN_QUERY_SOURCE access is needed to retrieve this information. |
TokenTypeThe buffer receives a TOKEN_TYPE value indicating whether the token is a primary or impersonation token. |
TokenImpersonationLevelThe buffer receives a SECURITY_IMPERSONATION_LEVEL value indicating the impersonation level of the token. If the access token is not an impersonation token, the call to SeQueryInformationToken or ZwQueryInformationToken fails. |
TokenStatisticsThe buffer receives a TOKEN_STATISTICS structure containing various token statistics. |
TokenRestrictedSidsThe buffer receives a TOKEN_GROUPS structure containing the list of restricting SIDs in a restricted token. This value is valid starting with Windows Vista. |
TokenSessionIdThe buffer receives a DWORD value that indicates the Terminal Services session identifier associated with the token. If the token is associated with the Terminal Server console session, the session identifier is zero. A nonzero session identifier indicates a Terminal Services client session. In a non-Terminal Services environment, the session identifier is zero. This value is valid starting with Windows Vista. |
TokenGroupsAndPrivilegesThe buffer receives a TOKEN_GROUPS_AND_PRIVILEGES structure that contains the user SID, the group accounts, the restricted SIDs, and the authentication ID associated with the token. This value is valid starting with Windows Vista. |
TokenSessionReferenceReserved for system use. |
TokenSandBoxInertThe buffer receives a DWORD value that is nonzero if the token includes the SANDBOX_INERT flag. This value is valid starting with Windows Vista. |
TokenAuditPolicyReserved for system use. |
TokenOriginThe buffer receives a TOKEN_ORIGIN value. If the token resulted from a logon that used explicit credentials, such as passing a name, domain, and password to the user-mode LogonUser function, then the TOKEN_ORIGIN structure will contain the ID of the logon session that created it. If the token resulted from network authentication, such as a call to user-mode AcceptSecurityContext function or a call to user-mode LogonUser function with dwLogonType set to LOGON32_LOGON_NETWORK or LOGON32_LOGON_NETWORK_CLEARTEXT, then this value will be zero. This value is valid starting with Windows Server 2003. |
TokenElevationType |
TokenLinkedTokenThe buffer receives a TOKEN_LINKED_TOKEN structure that contains a handle to another token that is linked to this token. This value is valid starting with Windows Vista. |
TokenElevationThe buffer receives a TOKEN_ELEVATION structure that specifies whether the token is elevated. This value is valid starting with Windows Vista. |
TokenHasRestrictionsThe buffer receives a DWORD value that is nonzero if the token has ever been filtered. This value is valid starting with Windows Vista. |
TokenAccessInformationThe buffer receives a TOKEN_ACCESS_INFORMATION structure that specifies security information contained in the token. This value is valid starting with Windows Vista. |
TokenVirtualizationAllowedThe buffer receives a DWORD value that is nonzero if virtualization is allowed for the token. This value is valid starting with Windows Vista. |
TokenVirtualizationEnabledThe buffer receives a DWORD value that is nonzero if virtualization is enabled for the token. This value is valid starting with Windows Vista. |
TokenIntegrityLevelThe buffer receives a TOKEN_MANDATORY_LABEL structure that specifies the token's integrity level. This value is valid starting with Windows Vista. For SeQueryInformationToken the output is the actual integrity level (DWORD). |
TokenUIAccessThe buffer receives a DWORD value that is nonzero if the token has the UIAccess flag set. This value is valid starting with Windows Vista. |
TokenMandatoryPolicyThe buffer receives a TOKEN_MANDATORY_POLICY structure that specifies the token's mandatory integrity policy. This value is valid starting with Windows Vista. |
TokenLogonSidThe buffer receives a TOKEN_GROUPS structure that specifies the token's logon SID. This value is valid starting with Windows Vista. |
TokenIsAppContainerThe buffer receives a DWORD value that is nonzero if the token has the application container flag set. This value is valid starting with Windows 8. |
TokenCapabilitiesThe buffer receives a TOKEN_GROUPS structure and an array of SID_AND_ATTRIBUTES structures for each token capability. This value is valid starting with Windows 8. |
TokenAppContainerSidThe buffer receives a TOKEN_APPCONTAINER_INFORMATION structure that contains the AppContainerSid associated with the token. If the token is not associated with an app container, the TokenAppContainer member of the TOKEN_APPCONTAINER_INFORMATION structure points to NULL. This value is valid starting with Windows 8. |
TokenAppContainerNumberThe buffer receives a DWORD value that is the application container number. This value is valid starting with Windows 8. |
TokenUserClaimAttributesThe buffer receives a CLAIM_SECURITY_ATTRIBUTES_INFORMATION structure that specifies the user's claim attributes. This value is valid starting with Windows 8. |
TokenDeviceClaimAttributesThe buffer receives a CLAIM_SECURITY_ATTRIBUTES_INFORMATION structure that specifies the device's claim attributes. This value is valid starting with Windows 8. |
TokenRestrictedUserClaimAttributesReserved for system use. |
TokenRestrictedDeviceClaimAttributesReserved for system use. |
TokenDeviceGroupsThe buffer receives a TOKEN_GROUPS structure and an array of SID_AND_ATTRIBUTES structures for each device group. This value is valid starting with Windows 8. |
TokenRestrictedDeviceGroupsReserved for system use. |
TokenSecurityAttributesReserved for system use. |
TokenIsRestrictedReserved for system use. |
TokenProcessTrustLevelReserved for system use. |
TokenPrivateNameSpaceReserved for system use. |
TokenSingletonAttributesReserved for system use. |
TokenBnoIsolationReserved for system use. |
TokenChildProcessFlagsReserved for system use. |
TokenIsLessPrivilegedAppContainerReturns a DWORD value that is nonzero if the token is for a less privileged app container. |
TokenIsSandboxedReturns a DWORD value that is nonzero if the token is for a sandboxed process or app. |
TokenIsAppSiloReturns a DWORD value that is nonzero if the token is associated with an app silo. |
TokenLoggingInformationThe buffer receives a TOKEN_LOGGING_INFORMATION structure with logging information associated with the token. |
MaxTokenInfoClassThe maximum value for this enumeration. |
Requirements
| Requirement | Value |
|---|---|
| Header | ntifs.h (include Ntifs.h) |