0

我是 Active Directory 域管理员,如何获取特定域用户的访问令牌?我想使用这个用户的访问令牌从只对他开放的共享文件夹中获取一些数据。

4

1 回答 1

1

如果用户已登录并且您想使用他的令牌模拟他,那么过程是:

  1. 用于WTSEnumerateSessions在循环中列出系统的所有活动用户。

  2. PWTS_SESSION_INFO如果用户是您想要的,则使用信息进行比较。

  3. 如果用户匹配,则使用WTSQueryUserToken获取用户的令牌。此 Api 需要会话 ID,您将从PWTS_SESSION_INFO第 1 步中调用的 struct 中获得该会话 IDWTSEnumerateSessions

  4. 使用 DuplicateTokenEx 复制令牌,然后使用 ImpersonateLoggedOnUser 模拟该用户。

  5. 复制文件等完成工作

  6. 回归自我。

示例点击这里

如果用户未登录并且您想使用他的凭据模拟并完成工作,则:

  1. 使用LogonUserAPI 获取令牌并从上述选项的第 4 步开始。
于 2012-06-09T15:55:32.293 回答