使用 C# 模拟 Windows 中的用户
这个问题深入研究了 Windows 编程的一个关键方面 - 从 C# 应用程序模拟用户。当前的具体问题是使作为 LocalSystem 运行的 Windows 服务能够临时采用不同用户的身份,特别是使用 Windows 集成安全性访问数据库。
如何模拟用户
模拟用户涉及利用低级 Windows API 函数,主要是 NtCreateToken 和 CreateToken。这些函数允许您创建代表所需用户的令牌,然后使用它在线程中模拟。
权限要求
要成功模拟用户,您需要需要 SeCreateTokenPrivilege 权限。当您以 NT AUTHORITYSYSTEM 身份运行时,获取此权限应该不是问题。
模拟可以无密码吗?
不幸的是,模拟用户通常需要了解目标用户的密码。但是,没有推荐的方法可以在 C# 或 VBScript 中安全存储密码。
以上是Windows 服务如何在 C# 中模拟用户而不存储密码?的详细内容。更多信息请关注PHP中文网其他相关文章!