是否可以使用Powershell脚本进行模拟。像C#直接功能一样
dwSessionId = WTSGetActiveConsoleSessionId()
WTSQueryUserToken(dwSessionId, ref hUserToken)
powershell中是否有任何函数执行与上述相同的任务。
我想获得“登录并运行桌面交互式会话”的当前用户的令牌。
答案 0 :(得分:1)
似乎不可能开箱即用。
Windows API不会公开您需要的信息,这就是原因 Powershell无法与他们联系。它的故意特征 安全子系统。这种方法的唯一方法是Linux 机器可以信任呼叫机器,例如将它们连接到一台机器上 Active Directory(或任何kerberos设置)。
除此之外,您还需要存储并传递此信息 不知。
您可以将RSA密钥存储在用户的密钥库中,然后将其解压缩 运行时(使用.NET Crypto / Keystore库),因此您不存储 关键代码的关键。关键本身就是这样 受操作系统保护,仅在主叫用户可用时才可用 认证。你还有一件事需要安装,但可能是 实现你的目标的唯一途径。
- 引自here
使用此方法+ qwinsta
命令来获取活动会话将以某种方式为您提供所需的信息。