如何验证build.vnext代理到内部部署TFS

时间:2015-06-24 12:19:28

标签: build-server tfs2015

我们有一个内部部署的TFS2015RC安装。服务器是我们域的一部分。

在同一域中的另一台服务器上配置构建代理(build.vnext)时,一切都按预期工作。

但是,在此域之外的服务器上配置构建代理时,会发生以下情况:

使用ConfigureAgent.ps1:

  1. 接受所有默认值
  2. 选择交互模式(e.i。未安装为Windows服务)
  3. 然后会出现一个身份验证对话框:
    • 我输入了TFS
    • 管理员的域用户(domain\user
    • 我提供此用户的域密码。如果密码错误,对话框会这样说,我需要更正它(Windows中的默认行为)
  4. 脚本继续,但在启动代理后,它说:
  5.   

    ERROR:
      VS30063:您无权访问http:// {server}:8080 / tfs

    为什么身份验证失败?如何找出它尝试进行身份验证的用户?

    我试过了:

    • 查看_diag文件夹中的日志文件。日志文件的状态完全相同,没有更多可用信息。
    • 尝试了来自this link的建议,以便在TFS服务器上的IIS上启用基本身份验证。我这样做(很不情愿),但它没有解决问题。

2 个答案:

答案 0 :(得分:2)

好的,我设法解决了这个问题:

  1. 在TFS服务器上创建用户TFS \ remotebuild
  2. 给了当地人 用户访问TFS代理池
  3. 授予本地用户访问TFS源代码管理
  4. 的权限
  5. 在Build服务器上创建了一个用户BUILD \ remotebuild,其密码与TFS \ remotebuild
  6. 相同
  7. 运行构建代理配置脚本时,当它要求服务帐户时,选择BUILD \ remotebuild用户
  8. 当它要求TFS身份验证时,请提供TFS \ remotebuild用户凭据
  9. 像这样,它正在发挥作用! 但是,我在某种程度上无法让它在"控制台模式" (即不将其作为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

  1. LocalServiceAccount.
  2. 身份登录构建代理计算机
  3. 删除TFS服务器的所有已保存凭据。
    • 打开控制面板> 用户帐户> 凭据管理器
    • 点击 Windows凭据
    • 删除TFS服务器的所有已保存凭据。
  4. 删除C:\agent\settings.json(如果存在)。
  5. 打开管理命令提示符C:\Agent并运行ConfigureAgent.cmd
  6. 按照提示操作。系统提示您安装为服务时,请输入Y
  7. 系统提示您输入用户帐户时,请输入LocalServiceAccount
  8. 的凭据
  9. 当您看到要向TFS进行身份验证的弹出提示时,请输入PoolAdmin的凭据。 重要:取消选中记住我的凭据复选框。

      

    如果PoolAdminTfsServiceAccount相同,您可以记住凭据并跳过剩余的步骤。

  10. 停止VSO代理服务。

  11. 使用Internet Explorer,打开TFS服务器的URL。
  12. 当提示您对TFS进行身份验证时,请输入TfsServiceAccount的凭据。 重要:这一次,请查看记住我的凭据复选框。
  13. 启动VSO代理服务。
  14. 您的新座席现在应该在网上列为在线。

    参考文献: