有没有办法在 Azure DevOps 中为所有当前和未来存储库和项目中的所有当前和未来分支设置“强制推送”权限?
我们目前有大约 50 个项目,每个项目都有一个 repo 和几个分支,并且在每个存储库的每个分支中设置权限将是大量的手动工作并且容易出错。
有没有办法在 Azure DevOps 中为所有当前和未来存储库和项目中的所有当前和未来分支设置“强制推送”权限?
我们目前有大约 50 个项目,每个项目都有一个 repo 和几个分支,并且在每个存储库的每个分支中设置权限将是大量的手动工作并且容易出错。
Jesse Houwing最近写了一篇关于它的文章,简而言之,你可以使用tfssecurity
命令为所有项目中的所有存储库应用 git 权限:
tfssecurity /a+ "Git Repositories" repoV2/ "ForcePush" adm: ALLOW /collection:https://dev.azure.com/{organization}
解释:
/a+
- 添加 (a+) 或删除 (a-) 此权限。
Git Repositories
- 安全命名空间
repoV2
- 组织级别的代币
ForcePush
- 我们要设置的权限
adm:
- 组(在本例中为“项目集合管理员”)
ALLOW
- 允许或拒绝权限
我建议看一下文章,看看他是如何找到它的。
tfssecurity
您可以在此处找到有关工具的更多信息。
您可以通过这个REST API批量设置多个项目在Repositories 中的权限。
POST https://dev.azure.com/{organization}/_apis/accesscontrollists/{securityNamespaceId}?api-version=5.0
之前在 UI 中未设置的“强制推送”权限已更改为允许。