![Windows:以不同用户身份运行程序并提升权限](https://linux22.com/image/1620870/Windows%EF%BC%9A%E4%BB%A5%E4%B8%8D%E5%90%8C%E7%94%A8%E6%88%B7%E8%BA%AB%E4%BB%BD%E8%BF%90%E8%A1%8C%E7%A8%8B%E5%BA%8F%E5%B9%B6%E6%8F%90%E5%8D%87%E6%9D%83%E9%99%90.png)
我(在家)是域管理员,而用户没有本地管理员权限。Windows 10 上的一个用户想要运行 Badlion 客户端(一些 Minecraft 反作弊软件),这需要管理员权限。我不想每次用户想要启动程序时都使用我的域凭据登录,而且用户每次都烦透了问我要启动它。我创建了一个本地管理员帐户,但泄露凭据会给他一般的管理员权限,能够安装恶意软件等等。我想要的是一些快捷方式,只能以本地管理员的身份启动这个程序,提升权限。
我确实明白,凭据必须以某种方式存储在他的帐户下本地;这是不可避免的。但是,如果我使用 Windows 凭据存储,它们可以用于任何事情,而不仅仅是启动此软件。我考虑过将凭据与 DPAPI 一起存储在某个自定义标签下。除非他能够逆转我编写的脚本/工具,否则密码会非常安全。现在,如果我编写一个脚本从那里获取密码,我该如何实现目标?以某种方式 RunAs 和提升?关于如何实现这一点有什么想法吗?如果需要,我可以开发软件或 Powershell 脚本,但我正在寻找尽可能简单的东西。
(是的,我检查过了,这个确切的问题还不存在。所有现有问题都使用 Windows 凭据存储或从已经具有特权的帐户开始。)
以上只是背景信息;让我们更简单地表述这个问题:我想要一些以非管理员用户身份运行/启动的脚本,该脚本具有管理员用户的硬编码凭据,并以其他用户身份启动提升的 Cmd.exe(保持打开状态)。UAC 是/否提示甚至可以,但没有需要再次手动输入密码的 UAC 提示。