azure发布管道任务从本地代理以管理员身份运行powershell?

时间:2020-09-09 16:07:59

标签: azure-pipelines

具有运行发布管道时使用的本地代理。我的任务之一是需要停止Windows服务的Powershell脚本,因此它需要管理员权限。该代理程序在具有管理员权限的帐户下运行,所以让我想知道,如何在部署组的代理程序上以管理员身份运行Powershell脚本?

您必须以某种方式提升其权限,就像运行powershell命令“以管理员身份运行”一样。

2 个答案:

答案 0 :(得分:1)

AzureAdmin 非常适合您。通过创建具有 http 请求功能的轻量级 .Netcore Worker 服务,我们解决了无法使用提升的 Powershell 命令的问题。只需确保您以管理员权限安装该服务,并且您可以从常规 Powershell YML 任务发送 Invoke-RestMethod 命令,它会在 ASP 控制器的另一端触发您的自定义逻辑。在为我们的单元测试重新安装之前,我们使用它来删除 Appx 包。存储库位于 Here 随心定制。

答案 1 :(得分:0)

一个人如何以管理员身份在部署组的代理上运行Powershell脚本?

不仅仅支持提升以管理员身份运行PowerShell的权限。

您可以使用名为“目标计算机上的PowerShell”的内置任务,该任务需要您提供一些计算机详细信息和管理员凭据:

  1. 用逗号分隔的机器IP地址或FQDN列表以及端口。默认端口基于所选协议。例如:dbserver.fabrikam.com,dbserver_int.fabrikam.com:5986,192.168.12.34:5986

  2. 管理员的用户名和密码。