2.7. 完整性 shield 保护(技术预览)
完整性屏蔽是一种工具,它有助于为创建或更新资源的任何请求执行签名验证。完整性截图支持开放策略代理(OPA)和 Gatekeeper,验证请求是否有签名,并根据定义的约束阻止任何未授权的请求。
请参阅以下完整性 shield 功能:
- 仅支持部署授权的 Kubernetes 清单。
- 在资源配置中支持零偏移,除非资源已添加到 allowlist 中。
- 在集群上执行所有完整性验证,如强制准入控制器。
- 如果集群中部署了未经授权的 Kubernetes 资源,则持续监控资源以报告。
-
X509、GPG 和 Sigstore 签名支持为 Kubernetes 清单 YAML 文件签名。Kubernetes 完整性 shield 使用
k8s-manifest-sigstore
支持 Sigstore 签名。
2.7.1. 完整性 shield 架构
完整性屏蔽由两个主要组件组成,即 API 和 Observer。完整性 shield operator 支持在集群上安装和管理完整的 shield 组件。查看以下组件描述:
-
完整性 shield API 从 OPA 或 gatekeeper 接收 Kubernetes 资源,验证准入请求中包含的资源,并将验证结果发送到 OPA 或 gatekeeper。shield API 在内部使用
k8s
功能来验证 Kubernetes 清单 YAML 文件。完整性 shield API 根据-manifest-sigstore 的 verify-
resourceManifestingIntegrityConstraint
(是基于 OPA 或 gatekeeper 的约束框架的自定义资源)验证资源。 -
完整性 shield Observer 根据
ManifestingIntegrityConstraint
资源持续验证集群中的 Kubernetes 资源,并将结果导出到名为ManifestIntegrityState
的资源。完整性 shield Observer 还使用k8s-manifest-sigstore
来验证签名。