Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 756

OPA(开放策略代理)

OPA(开放策略代理) 是什么?

OPA(开放策略代理)CNCF 毕业的通用策略引擎,使用 Rego 语言将授权决策与应用以及 Kubernetes 准入控制解耦。


OPA(Open Policy Agent)是一个开源的通用策略引擎,允许团队用声明式语言 Rego 将授权、准入控制和配置规则表达为代码。应用与平台以 JSON 形式将输入发送给 OPA 并获得决策,从而将策略从业务逻辑中剥离。它被广泛用于 Kubernetes 准入控制(通过 Gatekeeper)、微服务授权(Envoy/Istio 外部 authz)、Terraform 计划检查、CI/CD 守护规则以及 SaaS RBAC。OPA 可以作为 sidecar、独立服务、库或完全运行在集群内,并支持策略包和决策日志。最佳实践包括为 Rego 策略编写充分的测试、对策略包进行版本化以及持续的策略评审。

示例

  1. 01

    Gatekeeper 使用 OPA 拒绝以 root 身份运行的 Kubernetes Pod。

  2. 02

    Envoy ext_authz 通过 gRPC 将每次请求的授权委托给 OPA。

常见问题

OPA(开放策略代理) 是什么?

CNCF 毕业的通用策略引擎,使用 Rego 语言将授权决策与应用以及 Kubernetes 准入控制解耦。 它属于网络安全的 云安全 分类。

OPA(开放策略代理) 是什么意思?

CNCF 毕业的通用策略引擎,使用 Rego 语言将授权决策与应用以及 Kubernetes 准入控制解耦。

OPA(开放策略代理) 是如何工作的?

OPA(Open Policy Agent)是一个开源的通用策略引擎,允许团队用声明式语言 Rego 将授权、准入控制和配置规则表达为代码。应用与平台以 JSON 形式将输入发送给 OPA 并获得决策,从而将策略从业务逻辑中剥离。它被广泛用于 Kubernetes 准入控制(通过 Gatekeeper)、微服务授权(Envoy/Istio 外部 authz)、Terraform 计划检查、CI/CD 守护规则以及 SaaS RBAC。OPA 可以作为 sidecar、独立服务、库或完全运行在集群内,并支持策略包和决策日志。最佳实践包括为 Rego 策略编写充分的测试、对策略包进行版本化以及持续的策略评审。

如何防御 OPA(开放策略代理)?

针对 OPA(开放策略代理) 的防御通常结合技术控制与运营实践,详见上方完整定义。

OPA(开放策略代理) 还有哪些其他名称?

常见的别称包括: 开放策略代理, Rego 策略引擎。

相关术语