【问题标题】:Access denied when creating TFS Release definition创建 TFS 发布定义时访问被拒绝
【发布时间】:2017-04-22 18:06:15
【问题描述】:

我正在尝试在 TFS 上设置发布定义,但遇到了拒绝访问消息:

我认为我应该拥有此权限,因为我是“代理池管理员”组的成员:

但是我注意到,我的队列没有角色,并且由于某种原因我无法添加角色,我怀疑这与问题有关:

我的问题是如何正确配置权限?我已经用谷歌搜索了一堆,但我仍然无法确定我缺少什么确切的权限。

[[更新]]

这是 TFS 2015 更新 3

显然,我自己已经是项目集合管理员,但仍然没有队列权限并且不知道,或者看不到将自己添加为队列管理员的位置。

上述队列是我创建的,但间接地,我创建了代理池并检查了自动配置队列,并创建了队列,但是,如果我尝试直接创建队列,我会遇到另一个“访问拒绝”错误

[更新]

尝试运行tfssecurity /collection:http://wada-pc:8080/tfs/DefaultCollection /g+ "[Agent Queues]\Agent Queue Administrators" "domain\account"

带我进入Error: Access Denied: Eduardo Wada needs the following permission(s) to perform this action: Edit collection-level information

但是,我应该有这个权限:

【问题讨论】:

  • 哪个确切的 TFS 版本?在 2015 年,项目集合管理员必须将您添加为队列管理员或队列用户。 2017 年移至项目级别,项目管理员应该能够添加您。
  • TestPool agent Queue下的agent状态如何?
  • TestPool 代理队列下有一个代理(Agent1),其状态为“空闲”
  • 你能运行这个命令然后检查发生了什么吗:tfssecurity /collection:tfscollectionurl /g+ "[Agent Queues]\Agent Queue Administrators" "doamin\account"
  • 你需要从url中删除“project1”

标签: tfs tfs-2015 tfs-security


【解决方案1】:

是的,您的问题与代理队列角色有关。代理队列提供对代理池的访问。通常,角色下有两个组:

代理队列管理员:该组中的人员可以在该池中注册新代理,将用户添加到代理池服务帐户并将其他管理员添加到池中。

代理队列用户:对于 Team Foundation Server,您为代理指定的服务帐户(通常是网络服务)会在您注册代理时自动添加。

尝试使用创建此代理队列的帐户检查是否可以看到角色,并将您的帐户添加到两个组中。

或者,尝试创建一个新的代理队列,看看您是否可以看到角色,然后部署一个新的代理。

【讨论】:

  • 尝试选择所有队列,然后将您的帐户添加到管理员组。并检查网站上描述的所有权限:visualstudio.com/en-us/docs/build/admin/index
  • 我在“所有队列”项上遇到了同样的问题,角色选项卡中没有出现角色
  • 您的帐户在 Build Administrators 组中吗?
  • 不,但我在“Team Foundation Administrators”组和“Project Collection Administrators”组中
  • @EduardoWada 在 TFS Web Access 上检查您的帐户以查看它属于哪些组,并检查您所属组的权限。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-17
  • 1970-01-01
  • 2012-04-26
  • 2018-01-31
  • 1970-01-01
相关资源
最近更新 更多