设置对象级权限

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020

管理组织的安全性时,可以在组织/集合级别、项目级别和对象级别设置权限。 本文帮助你转到在对象级别设置权限的安全对话框,因为 Azure Devops 的用户界面有所不同。 有关详细信息,请参阅权限、访问和安全组入门

以下项目被视为对象:

  • 常规:仪表板、分析视图、Wiki 和通知
  • Azure Boards:区域路径、迭代路径、共享查询和查询文件夹等
  • Azure Pipelines:构建和发布管道、部署组、任务组等
  • Azure Repos:Git 存储库和分支、TFVC 文件夹或分支
  • Azure Artifacts:项目和源

工作项、标记、测试计划和其他测试项目受通常在项目级别或区域路径设置的安全设置的约束。

先决条件

类别 要求
权限 项目管理员组的成员或通过单个对象安全对话框拥有显式权限。

注意

TFVC 只支持每个项目一个存储库。 可以为从存储库继承的存储库或存储库文件夹/分支设置权限。

打开对象部分的权限对话框

若要访问对象的“权限”对话框,请执行以下步骤:

  1. 转到特定对象。
  2. 选择更多...
  3. 从下拉菜单中选择安全性

显示如何获取对象的权限设置的屏幕截图。

注意

某些对象(如存储库和分析视图)至少需要基本访问级别。 有关详细信息,请参阅访问级别

设置仪表板、Wiki 和 Analytic 视图的权限

可以在项目级别和组织/集合级别为某些常规项设置权限,例如创建、删除和重命名项目。 下表提供了有关在对象级别为仪表板、Wiki 和 Analytic 视图设置权限的信息。

Object 默认组成员资格 如何访问安全性 继承?
仪表板 参与者 打开“仪表板”,选择区域路径,然后选择更多...>。 ✔️(团队仪表板的项目设置)
Wiki 参与者 打开 Wiki,选择更多...>Wiki 安全性。 有关详细信息,请参阅管理 Wiki 权限
Analytic 视图 参与者和基本信息 打开 Analytic 视图,选择更多...>安全性

设置 Boards 对象的权限

下表提供有关在对象级别为区域和迭代路径、工作项等设置权限的信息。

Object 默认组成员资格 如何访问安全性 继承?
区域路径 项目管理员 打开区域旁边的项目设置>项目配置>区域>,更多 ... >安全性 ✔️(父节点中的子节点)
迭代路径 项目管理员 打开迭代旁边的项目设置>项目配置>迭代>,更多 ... >安全性 ✔️(父节点中的子节点)
工作项 参与者 打开项目设置>项目配置>区域>区域路径>工作项。
工作项查询和查询文件夹 查询或文件夹的创建者或项目管理员 打开工作项查询或查询文件夹>更多... >安全性
交付计划 项目管理员或交付计划的创建者 打开交付计划旁边的>交付计划>,更多... >安全性
进程 项目管理员 选择更多 ... >安全性 ✔️(从组织/集合设置)

注意

工作项标记 - 在项目级别设置权限创建标记定义。 工作项标记不能作为对象,它们是通过工作项定义的。

提示

让我们分解一下与审阅者相关的以下角色:

  • 更改的审阅者:
    • 此角色适用于因为一组文件定义的策略而添加或删除的任何审阅者。
    • 例如,考虑对 File1.cs 进行更改的拉取请求 (PR)。
    • 如果策略指定某个人员 A 需要审阅 File1.cs 的更改,则它们属于 PR 迭代的“更改的审阅者”角色。
  • 重置审阅者:
    • 此角色与“重置投票”策略相关。
    • 假设存储库配置了策略“重置对新推送的投票”。
    • 如果被要求审阅 PR 的人员 B 已经批准了 PR,他们的投票将因策略而重置。
    • 因此,他们在该迭代中扮演“重置审阅者”的角色。

设置存储库对象的权限

下表提供了有关在对象级别为存储库、Git 存储库、Git 分支和 TFVC 存储库设置权限的信息。

Object 默认组成员资格 如何访问安全性 继承?
存储库 项目管理员 打开“项目设置”,“存储库”突出显示存储库 安全性。>> ✔️
Git 存储库 项目管理员 打开项目设置>存储库和 Git 存储库。 ✔️(来自 Git 存储库的项目设置)
Git 分支 项目管理员 打开存储库>分支> 你的分支 >更多 ... >分支安全性 ✔️
TFVC 存储库 项目管理员 打开项目设置>存储库和 TFVC 存储库。 ✔️

提示

  • 权限报告:
    • 项目集合管理员可以下载存储库的权限报告
    • 对于非项目集合管理员组成员的用户,此功能的用户界面按钮不会显示。

设置 Pipelines 对象的权限

下表提供了有关在对象级别为生成管道、发布管道、部署组等设置权限的信息。

Object 默认组成员资格 如何访问安全性 继承?
管道 项目管理员 打开管道>管道>全部> 你的管道 >更多 ... >管理安全性 ✔️
生成管道 项目管理员 打开生成管道>更多... >管理安全性 ✔️
生成管道运行 项目管理员 打开生成管道运行>更多... >管理安全性 ✔️
发布管道 项目管理员 打开发布管道>更多... >管理安全性 ✔️
任务组(经典) 项目管理员 打开任务组>更多... >管理安全性 ✔️
部署组 项目管理员 打开部署组>更多... >管理安全性 ✔️
部署池 项目管理员 打开部署池>更多... >管理安全性 ✔️
环境 项目管理员 打开环境>更多... >管理安全性 ✔️(从环境权限设置)
变量组 项目管理员 打开变量组>更多... >管理安全性 ✔️(从库权限设置)
安全文件 项目管理员 打开安全文件>更多... >管理安全性 ✔️(从库权限设置)

设置 Artifacts 对象的权限

下表提供了有关在对象级别为工件和源设置权限的信息。

Object 默认组成员资格 如何访问安全性 继承?
工件 项目管理员 打开工件> Azure Artifacts 设置图标。 如果你没有正确的权限,则看不到该图标。
项目管理员或源管理员 打开源 >齿轮图标>权限>+ 添加用户/组

设置测试计划对象的权限

  • 测试计划、测试套件、测试用例和其他测试对象与工作项类似,因为它们表示测试特定的工作项类型,如测试对象和术语中所述。
  • 可以通过项目级别设置或区域路径对象级设置来管理测试级权限。 有关详细信息,请参阅为测试设置权限和访问权限

通过命令行设置对象权限

可以使用 az devops security 命令行工具,以便查看和管理各种对象和功能的权限。

以下是一些可以通过命令行管理的更精细权限的示例:

  • 通知: 使用 EventSubscriptionEventSubscriber 命名空间。
  • 仪表板: 使用 DashboardPrivileges 命名空间读取或创建仪表板。
  • 服务终结点: 通过 ServiceEndpoints 命名空间使用、管理或查看服务终结点。
  • 交付计划: 通过 Plans 命名空间查看交付计划。

有关命名空间的详细信息,请参阅安全命名空间和权限参考

设置对象通知的权限

虽然没有用于设置通知权限的用户界面,但可以通过命令行工具和 EventSubscription 命名空间设置某些权限。 有关详细信息,请参阅安全命名空间和权限参考

以下是一些管理通知的更多提示:

  • 通知级别:
    • 可以在不同级别设置通知:用户、团队、项目和组织/集合。
    • 遗憾的是,没有专门用于设置通知权限的用户界面。
    • 但是,可以通过命令行工具和 EventSubscription 命名空间配置某些权限。
  • 跳过发起程序选项:
  • 组织范围的通知:
    • Azure DevOps 不直接支持组织范围的通知。
    • 作为替代方案,考虑提供一个覆盖整个组织的电子邮件通讯组列表。
    • 在 Azure DevOps Services 中,可以使用所有用户登录时都会看到的 az devops banner 命令创建横幅。