我们有一个内置的TFS2015RC安装.服务器是我们域的一部分。
当在同一域中的另一台服务器上配置构建代理(build.vnext)时,一切都按预期工作。
但是,当在此域之外的服务器上配置构建代理时,会发生以下情况:
使用ConfigureAgent.ps1:
domain\user),它是TFS的管理员。
错误: VS30063:您没有被授权访问http://{server}:8080/tfs
为什么身份验证失败?,如何才能知道它试图对哪个用户进行身份验证?
我试过:
发布于 2015-07-01 15:07:32
好的,我设法像这样解决了这个问题:
就像这样,起作用了!但是,我无法让它以“控制台模式”运行(即不将其作为windows服务启动)。这不是什么大问题。
在此之后有一个小问题:在日志文件中,我可以看到它试图连接到http://NAME-OF-TFS:8080/tfs而不是http://IP-ADDRESS:8080/tfs,但是我可以通过在构建机器上的主机文件中添加一行来解决这个问题。
发布于 2016-09-20 21:24:51
身份
这可能涉及三种不同的身份,定义如下:
PoolAdmin -用于将代理添加到代理池中的帐户。此用户必须是要使用的池的Agent Pool Administrators角色的一部分。TfsServiceAccount -代理应该用来连接到TFS的帐户。这个帐户应该属于您想要使用的池的Agent Pool Service Accounts角色。虽然文档指出应该自动建立此角色成员资格,但在此工作组场景中可能不是这种情况。LocalServiceAccount -代理将在构建代理机器上运行的服务帐户。这可能是本地帐户,也可能是第二个域上的帐户,这取决于您的配置。注意:根据TFS实例的设置方式,前两个可能是相同的帐户。
配置
按照下面的步骤配置代理。这些步骤假设您已经将代理软件解压缩到C:\agent。
LocalServiceAccount.身份登录到生成代理计算机
C:\agent\settings.json,请删除它。C:\Agent并运行ConfigureAgent.cmd。Y。LocalServiceAccount的凭据。PoolAdmin的凭据。重要:取消选中,记住我的凭据复选框。
如果PoolAdmin和TfsServiceAccount是相同的,则可以记住凭据并跳过其余的步骤。TfsServiceAccount的凭据。:这一次,选中--记住我的凭据复选框。您的新代理现在应该在池中被列为在线代理。
参考文献:
https://stackoverflow.com/questions/31026380
复制相似问题