规划如何保护 YAML 管道

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

建议使用增量方法来保护管道。 理想情况下,你会实施我们提供的所有指导。 但是,请不要被建议的数量所困扰。 不要阻止进行某些改进,因为你现在无法进行所有更改。

安全建议相互依赖

安全建议具有复杂的相互依赖关系。 安全态势在很大程度上取决于你选择实施的建议。 反过来,你选择的建议取决于 DevOps 和安全团队的担忧。 它们还取决于组织的策略和做法。

你可能会选择在一个关键区域加强安全性,而在另一个区域接受较少的安全性但更多的便利性。 例如,如果使用 extends 模板来要求所有生成在容器中运行,则可能不需要为每个项目单独分配代理池

从几乎为空的模板开始

可以从几乎为空的模板强制实施扩展。 这样,当你开始应用安全做法时,你就有了一个已经捕获每个管道的集中位置。

有关详细信息,请参阅模板

禁止创建经典管道

注意

此功能从 Azure DevOps Server 2022.1 开始提供。

如果仅开发 YAML 管道,请禁止创建经典生成和发布管道。 这样做可以防止 YAML 和经典管道因共享相同的资源(例如相同的服务连接)引起的安全问题。

可以单独禁止创建经典生成管道和经典发布管道。 都禁用后,将无法使用用户界面或 REST API 创建经典生成管道、经典发布管道、任务组和部署组。

可以通过在组织级别或项目级别启用两个开关来禁止创建经典管道。 若要启用它们,请导航到你的“组织/项目设置”,然后在“管道”部分下选择“设置”。 在“常规”部分,打开“禁止创建经典生成管道”和“禁止创建经典发布管道”。

在组织级别启用它们时,将会为该组织中的所有项目启用它。 如果将其禁用,可以选择要为哪些项目启用它们。

为了提高新创建的组织的安全性,从 Sprint 226 开始,默认为禁止为新组织创建经典生成和发布管道。

后续步骤

规划安全方法后,请考虑存储库如何提供保护。