策略即代码
策略即代码 是什么?
策略即代码将安全、合规与治理规则用机器可读的代码进行定义,从而可版本化、可测试、可评审并自动执行的实践。
策略即代码(Policy as Code,PaC)将组织策略——允许哪些配置、谁可以做什么、数据可落在哪些区域——视为代码,存放在 Git 仓库中,在 CI 中测试,通过 Pull Request 评审,并由自动化引擎强制执行。常见实现包括使用 Rego 的 OPA、面向 Kubernetes 的 Kyverno、面向 Terraform 的 HashiCorp Sentinel、AWS Config Rules 和 Azure Policy。PaC 消除了 PDF 和 wiki 中的模糊性:对特权容器的拒绝可成为一个明确失败的测试,合规报告也可以基于同一套规则自动生成。该方法可将治理扩展到多个团队和云平台,与 DevSecOps 管道集成,并产生可审计的执行证据。
● 示例
- 01
一条 OPA Rego 规则在生产环境拒绝任何缺少 readinessProbe 的 Kubernetes Pod。
- 02
一条 Sentinel 策略阻止创建未加密 S3 存储桶的 Terraform 计划。
● 常见问题
策略即代码 是什么?
将安全、合规与治理规则用机器可读的代码进行定义,从而可版本化、可测试、可评审并自动执行的实践。 它属于网络安全的 云安全 分类。
策略即代码 是什么意思?
将安全、合规与治理规则用机器可读的代码进行定义,从而可版本化、可测试、可评审并自动执行的实践。
策略即代码 是如何工作的?
策略即代码(Policy as Code,PaC)将组织策略——允许哪些配置、谁可以做什么、数据可落在哪些区域——视为代码,存放在 Git 仓库中,在 CI 中测试,通过 Pull Request 评审,并由自动化引擎强制执行。常见实现包括使用 Rego 的 OPA、面向 Kubernetes 的 Kyverno、面向 Terraform 的 HashiCorp Sentinel、AWS Config Rules 和 Azure Policy。PaC 消除了 PDF 和 wiki 中的模糊性:对特权容器的拒绝可成为一个明确失败的测试,合规报告也可以基于同一套规则自动生成。该方法可将治理扩展到多个团队和云平台,与 DevSecOps 管道集成,并产生可审计的执行证据。
如何防御 策略即代码?
针对 策略即代码 的防御通常结合技术控制与运营实践,详见上方完整定义。
策略即代码 还有哪些其他名称?
常见的别称包括: PaC。
● 相关术语
- cloud-security№ 756
OPA(开放策略代理)
CNCF 毕业的通用策略引擎,使用 Rego 语言将授权决策与应用以及 Kubernetes 准入控制解耦。
- cloud-security№ 991
安全即代码
将安全控制、测试和基础设施以源代码形式表达,实现版本化、同行评审、自动化,并与应用一起持续交付的实践。
- compliance№ 204
合规
通过文档化控制、证据收集和持续评估,满足法律、监管、合同及内部安全要求的实践。
- cloud-security№ 600
Kubernetes 安全
对 Kubernetes 集群(API Server、控制平面、节点、工作负载与网络)的保护,防止配置错误、被攻陷以及横向移动。
- cloud-security№ 1014
服务网格安全
服务网格为云原生环境中服务间流量提供的身份、加密与授权控制集合。
- network-security№ 1262
零信任网络
默认不信任任何用户、设备或服务,并对每一次连接基于身份进行持续验证的网络架构。