Azure Pipelines 安全

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Azure Pipelines 安全可帮助控制对管道和管道资源的访问。 访问通过内置和自定义安全组和用户的分层系统进行管理。

管道资源是管道中使用的功能和对象,但存在于管道本身之外。 例如,发布管道、任务组、代理池和服务连接都是管道资源。

创建管道或资源后,将在项目级别为一组内置安全组和用户分配访问权限或角色。 然后,这些项目级别的安全设置将在对象级别为各个对象继承。 例如,创建管道时,将在项目级别分配一组默认的用户和组权限。 然后,这些安全设置会在项目内的所有管道的对象级别继承。

通常,管理员组被赋予对所有管道和资源的完全访问权限。 参与者通常被授予管理资源和管道的权限,而读者则被授予仅查看权限。 根据用户在项目中的角色以及执行任务所需的权限,将用户分配到安全组。

可以在项目级别和对象级别添加和删除用户和组,并更改其权限和角色。 可以启用和禁用对象级继承。

必须是项目管理员组的成员才能在项目级别管理安全设置,并且必须是管理员组的成员,或者必须分配有管理员安全角色才能管理对象级管道和资源的安全。

权限和角色设置

管道、发布管道和任务组使用基于任务的权限。 可以将用户和组的权限设置为:

权限 说明
允许 授予对功能或任务的权限。
拒绝 拒绝对功能或任务的权限。
未设置 隐式拒绝权限,但允许从显式设置了权限的最近上级继承权限。

有关详细信息,请参阅关于权限和继承

库、代理池、服务连接、部署组和环境使用基于角色的访问。 用户和组的角色包括:

角色 用途
读者 可以查看资源。
用户 可以使用资源。
创建者 可以创建资源。 此角色仅是项目级角色。
管理员 可以使用和管理资源并设置其安全性。 资源创建者会自动被分配此角色。
服务帐户 用于代理和部署池,可以查看代理、创建会话、侦听作业。 此角色仅在集合级别或组织级别可用。

有关详细信息,请参阅关于管道安全角色

设置 Azure Pipelines 和资源的权限

有关为管道和管道资源配置安全性的信息,请参阅以下文章:

常见问题

请参阅以下有关管道权限的常见问题解答 (FAQ)。

问:为什么我无法创建新管道?

答:需要编辑生成管道权限才能创建新管道。 若要添加权限,请打开所有管道的安全设置,并验证是否为安全组将“编辑生成管道”设为“允许”。

如果仍无法创建管道,检查你的访问级别是否设为“利益干系人”。 如果你拥有利益干系人访问权限,请将你的访问权限更改为“基本”。

问:为什么有消息提示我需要授权资源才能继续运行?

答:需要先授权资源,然后才能使用它们。 此规则的例外情况是,当你首次创建管道时,YAML 文件中引用的所有资源都将自动获得授权。 只要运行管道的用户有权访问该资源,就可以为该管道授权资源。

若要授权所有管道访问代理池等资源,请执行以下步骤:

  1. 在项目中,选择设置>管道>代理池

  2. 为特定代理池选择安全性,然后更新权限以授予对所有管道的访问权限。

    向所有管道授予权限。

    有关详细信息,请参阅 YAML 中的资源