WTSQueryUserToken 函数 (wtsapi32.h)

获取会话 ID 指定的已登录用户的主要访问令牌。 若要成功调用此函数,调用应用程序必须在 LocalSystem 帐户 的上下文中运行,并具有 SE_TCB_NAME 特权。

警告WTSQueryUserToken 适用于高度受信任的服务。 服务提供商在调用此函数时必须小心,不要泄露用户令牌。 服务提供商在使用完令牌句柄后,必须关闭令牌句柄。
 

语法

BOOL WTSQueryUserToken(
  [in]  ULONG   SessionId,
  [out] PHANDLE phToken
);

参数

[in] SessionId

远程桌面服务会话标识符。 在服务上下文中运行的任何程序都将具有零 (0) 的会话标识符。 可以使用 WTSEnumerateSessions 函数检索指定 RD 会话主机服务器上所有会话的标识符。

若要能够查询其他用户会话的信息,需要具有“查询信息”权限。 有关详细信息,请参阅 远程桌面服务权限。 若要修改会话的权限,请使用远程桌面服务配置管理工具。

[out] phToken

如果函数成功,则 接收指向已登录用户的令牌句柄的指针。 请注意,必须调用 CloseHandle 函数才能关闭此句柄。

返回值

如果函数成功,则返回值为非零值, phToken 参数指向用户的主令牌。

如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。

注解

有关主令牌的信息,请参阅 访问令牌。 有关帐户权限的详细信息,请参阅 远程桌面服务权限授权常量

有关与该帐户关联的权限的信息,请参阅 LocalSystem 帐户。

要求

   
最低受支持的客户端 Windows Vista
最低受支持的服务器 Windows Server 2008
目标平台 Windows
标头 wtsapi32.h
Library Wtsapi32.lib
DLL Wtsapi32.dll
API 集 windows 8 中引入的 ext-ms-win-session-wtsapi32-l1-1-0 ()

另请参阅

CloseHandle

WTSEnumerateSessions