首页 > 解决方案 > 允许用户设置分支策略但不允许跨存储策略

问题描述

当前情况(如果我没有遗漏任何东西)

  1. 如果 Project settings --> Repos-->Repositories-> Git Repositories -> "Edit Policies" 是允许的,用户可以编辑 Cross Repo Policies 并将 "local" 策略添加到各个 repos/branch

  2. 如果 Project settings --> Repos-->Repositories-> Git Repositories -> "Edit Policies" is denied ,用户不能编辑任何类型的策略(Cross Repo 或“local”)

  3. 如果我希望用户能够编辑特定回购/分支机构的“本地”政策,但不能编辑交叉回购政策,我必须

    在“Git Repositories”上,将“Edit Policies”设置为 Denied
    在每个 Repository上,将“Edit Policies”设置为 Allowed

期望的行为
有没有办法允许用户编辑“本地”存储库/分支策略,而无需对每个单独的存储库设置权限?

基本上,我想在公司范围内执行“跨回购策略”,但如果需要,允许团队添加其他策略拥有自己的回购/分支。

谢谢

标签: azureazure-devops

解决方案


您在上述当前情况下描述的行为是设计使然,很容易理解。对于您设置的权限Git Repositories是 Cross Repo,它们适用于项目中的所有 repo。

这样,如果您允许Git Repositories级别用户的编辑策略权限。他将能够编辑交叉回购策略。如果您拒绝该权限,他将不会编辑任何类型的策略。

将用户添加到项目的团队组时。他将继承该组的权限设置。因此,您可以在级别 上为用户设置Edit Policies权限。他将继承他所属的组的权限集。Not setGit Repositories

如果您想在公司范围内实施“跨回购策略”,但允许团队在必要时添加拥有自己的回购/分支的其他策略。您需要将Edit Policies权限设置为Denyon Git Repositorieslevel,并将Edit Policies权限设置allow为每个单独团队组的每个 repo 级别。

检查 此处的步骤以在 azure devops 中添加团队。


推荐阅读