GetTokenInformation

【勇芳软件工作室】汉化HomePreviousNext

GetTokenInformation函数检索有关访问令牌的指定类型的信息。调用进程必须具有获取信息的适当访问权限。

BOOL GetTokenInformation(

HANDLE 【TokenHandle】,//访问令牌的句柄
TOKEN_INFORMATION_CLASS 【TokenInformationClass】,//要检索的信息类型
LPVOID 【TokenInformation】,//检索到的信息的地址
DWORD 【TokenInformationLength】,//信息缓冲区的大小
PDWORD 【ReturnLength】//所需缓冲区大小的地址
); 

参数

【TokenHandle】

标识检索信息的访问令牌。

【TokenInformationClass】

指定TOKEN_INFORMATION_CLASS枚举类型的变量,标识函数检索的信息类型。

【TokenInformation】

指向缓冲区,功能填充所请求的信息。放入此缓冲区的结构取决于【TokenInformationClass】参数指定的信息类型,如以下列表所示:

令牌信息类退回结构
TokenUserTOKEN_USER结构。需要TOKEN_QUERY访问才能检索此信息。
TokenGroupsTOKEN_GROUPS结构。需要TOKEN_QUERY访问才能检索此信息。
TokenPrivilegesTOKEN_PRIVILEGES结构。需要TOKEN_QUERY访问才能检索此信息。
TokenOwnerTOKEN_OWNER结构。需要TOKEN_QUERY访问才能检索此信息。
TokenPrimaryGroupTOKEN_PRIMARY_GROUP结构。需要TOKEN_QUERY访问才能检索此信息。
TokenDefaultDaclTOKEN_DEFAULT_DACL结构。需要TOKEN_QUERY访问才能检索此信息。
TokenSourceTOKEN_SOURCE结构。需要TOKEN_QUERY_SOURCE访问才能检索此信息。
TokenTypeTOKEN_TYPE枚举类型。需要TOKEN_QUERY访问才能检索此信息。
TokenImpersonationLevelSECURITY_IMPERSONATION_LEVEL枚举类型。需要TOKEN_QUERY访问来检索有关令牌的信息。如果访问令牌不是模拟令牌,则该函数将失败。
TokenStatisticsTOKEN_STATISTICS结构。需要TOKEN_QUERY访问才能检索此信息。

检索结构和枚举类型的格式列在以下备注部分。

【TokenInformationLength】

指定【TokenInformation】参数指向的缓冲区的大小(以字节为单位)。

【ReturnLength】

指向一个变量,接收【TokenInformation】参数指向的缓冲区所需的实际字节数。如果该值大于【TokenInformationLength】参数中指定的值,则该函数将失败,并且不会在缓冲区中存储数据。

如果【TokenInformationClass】参数的值为TokenDefaultDacl且令牌没有默认访问控制列表,则该函数将由【ReturnLength】指向的变量设置为零,并且不将数据存储在缓冲区中。

返回值

如果函数成功,返回值不为零。

如果函数失败,返回值为零。要获取扩展错误信息,请调用GetLastError.

也可以看看

AdjustTokenGroups,AdjustTokenPrivileges,OpenProcessToken,OpenThreadToken,SetTokenInformation, SECURITY_IMPERSONATION_LEVEL, TOKEN_DEFAULT_DACL, TOKEN_GROUPS, TOKEN_INFORMATION_CLASS, TOKEN_OWNER, TOKEN_PRIMARY_GROUP, TOKEN_PRIVILEGES, TOKEN_SOURCE, TOKEN_STATISTICS, TOKEN_TYPE, TOKEN_USER