【问题标题】:Unable to remove azure group from repository无法从存储库中删除 azure 组
【发布时间】:2020-02-24 22:43:15
【问题描述】:

我在从存储库权限列表组中删除组时遇到问题。我可以用下一个示例来解释我的情况:

1.我创建了两个组:A 组和 B 组:

2。创建了一个新的 repo,然后我将其中一个组添加到 Repos 根目录,并将所有权限分配给该组。

3.然后,检查新的 repo(“Test”),这也有列表中的组,如果你打开了继承,这是正常的行为。

现在,当我尝试从子存储库(“测试”)中删除组时,就会出现问题。 Azure 显示下一个错误:“团队 A 已继承权限,无法从列表中删除。”。即使我尝试在禁用继承的情况下删除,但没有成功。

谁能解释一下为什么会这样?或者我可以做些什么来从子存储库中删除该组。

【问题讨论】:

  • 请问这个状态怎么样?下面的解释对你有帮助吗?你对此还有什么疑惑或疑问吗?如果它有帮助,感谢accept the answer 这样其他 SO 用户将能够看到它是否有效。

标签: azure-devops azure-security


【解决方案1】:

这应该是设计好的预期操作。

在第 2 步中,您将组添加到 顶级 存储库中。这是将对所有存储库进行更改的操作。当子仓库启用继承时,子个人仓库将自动继承顶级的权限。

这在document:

中提到过

通过更改所有 Git 存储库来设置权限 顶级 Git 存储库条目。

各个存储库从顶级 Git 继承权限 存储库条目。分支从所做的分配继承权限 在存储库级别。

更详细的,将Team ATeam B 添加到顶级存储库中,并将Inheritance 设置为子存储库中的true

此时,当您尝试从一个子存储库中删除 Team A 时,系统将拒绝您的请求并显示消息 ({group} 已继承权限,无法从列表中删除) .因为这个Team A同时还保留着其他子repos中的权限占用。

或者我可以做些什么来从子存储库中删除该组。

恐怕这无法实现,因为这是安全模型的限制。每个权限组都有其对应的安全模型。在此Version Control Administration 面板中,此模型的规则不允许添加到顶级存储库并由子级继承的用户或组可以从子级中删除。

在这种情况下,您已将它们从顶层移除。

因此,我建议您需要小心地将用户/组添加到顶级存储库中,而这些组/用户需要全局权限。在大多数情况下,为单个回购添加会更好。当然,这是基于群体/用户的实际需求。

【讨论】:

  • 即使从顶层删除也会阻止从子节点中删除组...它会很快变得混乱
猜你喜欢
  • 2016-07-30
  • 1970-01-01
  • 2013-08-28
  • 2014-06-04
  • 1970-01-01
  • 1970-01-01
  • 2011-01-23
  • 2014-02-18
  • 1970-01-01
相关资源
最近更新 更多