为什么我需要明确指定远程 PowerShell 执行的凭据

Why I need to explicitly specify credentials for remote PowerShell execution

我在目标机器上创建了一个 VSTS 任务 PowerShell,它在远程机器上执行电源 shell。此任务是作为发布定义的一部分创建的。

从逻辑上讲,当我触发新版本时,构建代理会在远程机器上执行此功能 shell。假设目标机器是 M1,我的构建代理是用户帐户 u1 下的 运行。我让 u1 成为 M1 的管理员。

如果服务代理运行下的帐户是目标机器上的管理员,那么为什么我需要再次明确提及凭据。如果我不指定凭据,则会抛出错误。

从逻辑上讲,当构建代理执行任何任务时,它会在哪个构建代理服务下具有相同的标识 运行。如果该应用程序是目标机器上的管理员,那么为什么我需要显式传递凭据。它是否应该在内部传递身份。

阿图尔苏雷卡

阿图尔

因为它没有为资源用户名(使用管理员用户名)使用当前用户(构建代理 运行 帐户)并且在部署机器之前失败。

换句话说,如果您为资源用户名(管理员登录名)指定任何用户,即使用户不是存在于目标机器中。 (可以设置system.debug为true,然后队列构建,对比日志)

我在这里提交一个用户声音:VSTS build PowerShell on target machine default user,你可以投票。