我们有一个内部部署的TFS2015RC安装。服务器是我们域的一部分。
在同一域中的另一台服务器上配置构建代理(build.vnext)时,一切都按预期工作。
但是,在此域之外的服务器上配置构建代理时,会发生以下情况:
使用ConfigureAgent.ps1:
domain\user
)
ERROR:
VS30063:您无权访问http:// {server}:8080 / tfs
为什么身份验证失败?如何找出它尝试进行身份验证的用户?
我试过了:
答案 0 :(得分:2)
好的,我设法解决了这个问题:
像这样,它正在发挥作用! 但是,我在某种程度上无法让它在"控制台模式" (即不将其作为Windows服务启动)。这不是一个大问题。
之后有一个小问题:在日志文件中我可以看到它尝试连接到http://NAME-OF-TFS:8080/tfs而不是http://IP-ADDRESS:8080/tfs,但我可以通过在hosts文件中添加一行来解决该问题在构建机器上。
答案 1 :(得分:1)
这可能涉及最多三种不同的身份,定义如下:
PoolAdmin
- 用于将代理添加到代理池的帐户。此用户必须是您要使用的池的Agent Pool Administrators
角色的一部分。TfsServiceAccount
- 代理用于连接TFS的帐户。此帐户应属于您要使用的池的Agent Pool Service Accounts
角色。虽然docs表示应自动建立此角色成员资格,但在此工作组方案中可能并非如此。LocalServiceAccount
- 代理将在构建代理计算机上运行的服务帐户。这可能是本地帐户或第二个域上的帐户,具体取决于您的配置。注意:根据您的TFS实例的设置方式,前两个可能最终成为同一个帐户。
按照以下步骤配置代理。这些步骤假设您已将代理软件解压缩到C:\agent
。
LocalServiceAccount.
C:\agent\settings.json
(如果存在)。C:\Agent
并运行ConfigureAgent.cmd
。Y
。LocalServiceAccount
。当您看到要向TFS进行身份验证的弹出提示时,请输入PoolAdmin
的凭据。 重要:取消选中记住我的凭据复选框。
如果
PoolAdmin
和TfsServiceAccount
相同,您可以记住凭据并跳过剩余的步骤。
停止VSO代理服务。
TfsServiceAccount
的凭据。 重要:这一次,请查看记住我的凭据复选框。您的新座席现在应该在网上列为在线。