Open Policy Agent (OPA)
通用的、CNCF 毕业的策略引擎,用于跨微服务、API、Kubernetes 和 CI 流水线,以代码形式统一执行授权、合规和配置规则。
概述
Open Policy Agent(OPA)是一个通用策略引擎,将策略决策与应用代码解耦。策略使用 Rego 编写——这是一种专为在结构化数据上表达规则而设计的声明式查询语言;OPA 会根据这些策略对某个请求或资源进行评估,返回一个允许/拒绝的决策(或更丰富的结构化输出),再由调用方服务负责执行。
由于 OPA 是一个独立的引擎,而不是嵌入到某个应用中的库,它通常被部署为 sidecar、用于在资源创建前拒绝不合规资源的 Kubernetes 准入控制器,或是 CI 流水线中的策略检查环节——同一套策略语言可以在非常不同的执行点被复用,而不必针对每个系统重新实现规则。
OPA 适合那些需要在众多服务和技术栈层级中一致地执行策略的平台和安全团队。它与目录中的 Casbin 或 OpenFGA 处于不同层级:后者是应用直接嵌入、用于在自身代码中检查权限的授权库,而 OPA 通常作为共享基础设施运行,供包括应用代码在内的许多不同系统查询使用。
- 分类
- DevOps
- 编程语言
- Go, Rego
- 许可证
- Apache-2.0
广告
相关项目
发现信息有误?在 GitHub 上提出修改建议。