以管理员身份运行的批处理可以以受限用户身份启动另一个批处理吗?

以管理员身份运行的批处理可以以受限用户身份启动另一个批处理吗?

我在 Windows 7 计算机上以管理员权限运行了一个批处理。该批处理必须运行另一个批处理,该批处理应访问映射的网络驱动器。但是,网络驱动器仅为登录用户的非管理员部分映射。由于第二个批处理不需要管理员权限,我希望它以受限用户身份运行,这样它就可以访问映射的驱动器。有什么办法吗?

为了明确我想要的,我希望得到以下流程:

  1. 用户埃兰登录个人电脑埃兰是本地管理员。
  2. 埃兰运行脚本文件以管理员身份。
  3. 脚本文件运行脚本文件埃兰的有限用户凭证(怎么做?这就是我要问的……)
  4. 脚本文件访问一些现在可以访问的映射驱动器。

万一问题的原因不清楚...

答案1

您可以使用 runas 命令。查看runas /?Microsoft runas 了解更多信息. 将其放入您的 b1.bat 文件中。

runas /noprofile /user:[email protected] "C:\batch\b2.bat"

此处注明来源


如果这不起作用,您可以在 b2.bat 文件中映射驱动器。添加net map z: \\server\share。然后跟进net use z: /d

答案2

以 user2 身份创建计划任务。User1 执行配置为在 user2 上下文中运行的该计划任务。schtasks 是从命令行运行的界面。

“schtasks /Run /TN taskname” 将为其他用户运行批处理文件。

相关内容