Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
本文介绍有助于保护 Azure Pipelines 中 受保护资源的 安全功能。 管道可能需要在运行期间访问开放或受保护的资源。
工件、管道、测试计划和工作项是 开放资源。 管道可以自由访问这些资源,可以通过订阅资源触发器事件来完全自动化工作流。 有关保护开放资源的详细信息,请参阅 “保护项目”。
受保护的资源 (如存储库和环境)需要更多的访问限制。 为了帮助保护受保护资源的安全,可以要求对管道进行权限、检查和批准才能访问受保护的资源。
本文是一系列教程的一部分,可帮助实现 Azure Pipelines 的安全措施。 有关更多信息,请参阅 Azure Pipelines 安全指南。
先决条件
| 类别 | 要求 |
|---|---|
| Azure DevOps | - 在使 Azure DevOps 安全和保护 Azure Pipelines 中实施建议。 - 对 YAML 和 Azure Pipelines 的基本知识。 有关详细信息,请参阅 创建第一个管道。 |
| 权限 | - 修改管道权限: 项目管理员组的成员。 - 要修改组织权限:必须是 项目集合管理员组的成员。 |
受保护的资源
受 Azure Pipelines 保护的资源包括以下项:
可以设置权限,以便只有项目中的特定用户和管道可以访问受保护的资源。 还可以定义在使用资源的管道阶段启动之前必须成功的检查和审批。 例如,您可以要求在管道阶段使用环境之前获得手动批准。 检查失败可能会导致流水线运行被挂起或失败。
存储库资源
将存储库添加到管道需要具有 参与 权限的用户授权才能访问存储库。 还可以通过将 Azure Pipelines 访问令牌的范围限制为仅在管道 resources 部分显式列出的存储库来保护存储库资源。 有关详细信息,请参阅 从管道安全访问存储库 和保护 存储库资源。
权限
可以为受保护的资源设置 用户权限 和 管道权限 。
仅向需要这些权限的用户授予 用户 权限。 User 角色的资源成员可以管理审批和检查。
管道权限可防范将受保护的资源复制到其他管道。 若要管理管道权限,请仅向信任的特定管道显式授予访问权限。
必须具有 “项目管理员” 角色,才能跨项目中的所有管道访问受保护的资源。 为了提高安全性,请不要启用 开放访问,这允许项目中的所有管道使用资源。 有关详细信息,请参阅 向受保护的资源添加管理员角色。
支票
若要更全面地保护管道中的受保护资源,请添加需要满足的检查条件,以便管道在满足这些条件后使用受保护的资源。 可以要求特定的审批或其他条件。 有关详细信息,请参阅 定义审批和检查。
批准
可以阻止对受保护资源的流水线请求,等待由指定的用户或组进行手动审核。 此检查通过允许在管道运行继续之前查看代码来提供额外的安全层。
分支控制
分支控制可确保只有经过授权的分支才能访问受保护的资源。 资源受保护分支检查可防止管道在未经授权的分支上自动运行。 通过使用分支控制,可以扩展特定于分支的手动代码评审要求。
营业时间
使用此检查来确保管道部署在指定的日期和时间范围内启动。
查看所有检查
选择 “查看所有检查 ”以查看并应用其他检查,例如 所需的模板。