SEC11-BP07 定期评测管道的安全属性
对您的管道运用 Well-Architected 安全性支柱原则,尤其注意权限分离。定期评测管道基础设施的安全属性。通过有效管理管道的安全性,可以确保通过管道的软件的安全性。
期望结果:用于构建和部署软件的管道遵循与环境中任何其它工作负载相同的建议做法。您在管道中实施的测试不可由使用这些测试的团队编辑。您只向管道授予它们使用临时凭证执行的部署所需的权限。您可以实施安全措施来防止将管道部署到错误的环境中。您可以将管道配置为发出状态,以便可以验证构建环境的完整性。
常见反模式:
-
构建者可以绕过安全测试。
-
用于部署管道的权限过于宽松。
-
未将管道配置为验证输入。
-
不定期审查与 CI/CD 基础设施关联的权限。
-
使用长期或硬编码凭证。
建立此最佳实践的好处:
-
对通过管道构建和部署的软件的完整性有了更大的信心。
-
在出现可疑活动时可以停止部署。
在未建立这种最佳实践的情况下暴露的风险等级:高
实施指导
部署管道是软件开发生命周期的关键组成部分,应遵循与环境中任何其它工作负载相同的安全原则和做法。这包括实施适当的访问控制、验证输入,以及定期审查和审计与 CI/CD 基础设施关联的权限。
确认负责构建和部署应用程序的团队无法编辑或绕过在管道中实施的安全测试和检查。这种关注点分离有助于维护构建和部署过程的完整性。
首先,可以考虑使用 AWS Deployment Pipelines Reference Architecture
此外,可以使用 AWS Identity and Access Management Access Analyzer 等服务为管道权限生成最低权限 IAM 策略,并作为管道中验证工作负载权限的一个步骤。这有助于验证管道和工作负载是否仅具有其特定功能所需的必要权限,从而降低未经授权的访问或操作的风险。
实施步骤
-
从 AWS 部署管道参考架构
开始。 -
考虑使用 AWS IAM Access Analyzer 以编程方式生成管道的最低权限 IAM 策略。
-
将管道与监控和警报集成在一起,以便在发生意外或异常活动时您会得到通知,对于 AWS 托管服务,Amazon EventBridge
允许您将数据路由到目标,例如 AWS Lambda 或 Amazon Simple Notification Service (Amazon SNS)。
资源
相关文档:
相关示例:
-
DevOps 监控控制面板
(GitHub)