需要提升权限才能在MsDeploy中运行命令吗?

4

我正在尝试使用MsDeploy runCommand提供程序在自动化部署期间卸载和重新安装Windows服务。

到目前为止,当遵循这个问题这篇博客文章中的建议时,我有一定的成功。

要执行实际的安装/卸载操作,我正在调用远程主机上的批处理文件。当我直接登录到主机并从shell中使用“以管理员身份运行”选项时,批处理文件按预期工作。但是,当仅通过双击运行批处理文件(或使用MsDeploy runCommand提供程序运行批处理文件)时,批处理文件没有足够的权限执行安装或卸载操作。在所有情况下,我都是使用在主机上是本地管理员的用户帐户运行批处理文件。

我已经确认runCommand通过管理服务委派工具使用管理员帐户,并重新启动了管理服务,只是为了这个。

我的问题是:

1)如何使用runCommand提供程序模拟“以管理员身份运行”?

2)如果我使用PowerShell脚本而不是批处理文件,这还会是一个问题吗?

3)我是否遗漏了一些基本的东西?

我真的不想编写真正的软件来在远程主机上执行此操作!

任何建议都将不胜感激。


关于我上面的问题#2的一些后续:使用PowerShell的Invoke-Command将以管理员权限执行批处理文件。 - David Montgomery
1个回答

2

你尝试过使用runas命令吗?它是MSDOS命令之一。

runas /user:mycomputer\myusername somecommand

是的,那也应该可以。我通过使用 PowerShell 脚本来绕过问题,就像我之前的评论中提到的那样。 - David Montgomery

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接