Azure DevOps - 如何在 Repo 上正确设置安全性

问题描述 投票:0回答:1

我在 Azure DevOps 中有一个存储库,我想阻止贡献者组的成员对其做出贡献。我了解分支策略,但我不想在这个特定的存储库上使用这些策略,我只是想阻止这些用户除了阅读之外无法对此存储库执行任何操作。所以我尝试的是拒绝贡献者组对此存储库的这些权利,如下所示:

但是,当我进行此更改时,其他组的成员也无法为 Repo 做出贡献,这不是我想要的。例如,我是项目管理员组的成员,但进行此更改后我无法再修改此存储库中的文件。

有没有办法阻止贡献者组的成员向该存储库做出贡献,但仍然允许其他组的成员(例如项目管理员)或特定用户(例如项目集合构建服务)仍然能够向该存储库做出贡献?

git security azure-devops
1个回答
1
投票

发生这种情况是因为至少其中之一是正确的:

  1. 贡献者组还包含一些其他组。
  2. 其他组中的一些用户也属于贡献者组。

结合事实,如果任何用户对同一权限具有 AllowDeny,则 Deny 将优先。

首先要尝试的是将贡献者的所有 Deny 更改为 Not set。 (屏幕截图中的所有这些设置。)“未设置”权限意味着您被拒绝该权限,除非您以其他方式获得该权限。这应该可以解决这个问题,除非其他组中的人设置贡献权限的唯一原因是贡献者之前在那里有Allow,或者如果您看到“允许(继承)”。在后一种情况下,接下来要尝试的是仅关闭此存储库的继承,然后“未设置”权限不应再提供对任何内容的访问。如果您这样做,您可能需要逐步检查存储库中的所有权限,以确认它们仍然是您想要的。 如果这些都不适合您,那么您可以使用上面创建的权限创建一个新组,然后将所有应具有只读权限的人员放入该组中。那么

拒绝

将只专门适用于他们。不过,随着新用户添加到您的系统中,这并不能很好地扩展,所以我更愿意使用继承和未设置规则来解决这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.