Cedar 加入 CNCF 成为沙箱项目
Cedar 是一种开源授权策略语言和 SDK,现已作为沙箱项目加入云原生计算基金会(CNCF)。CNCF 为早期和发展中的开源项目提供了一个中立的孵化平台。Cedar 旨在满足云原生环境对快速、安全且可分析的授权策略语言的需求,它允许开发者将访问控制逻辑与应用程序代码分离定义、外部化和管理。
授权挑战与 Cedar 的解决方案
随着云原生技术的成熟和企业应用的增加,授权管理变得日益复杂。越来越多的人和机器在生产环境中执行更多操作,使用强大的软件来操作动态变化的资源。为实现现代企业工作流程所需的细粒度授权,以往的服务通常依赖于硬编码逻辑或自定义的临时授权系统。然而,这些方法已无法满足现代云原生部署的要求。
Cedar 对技术严谨性的承诺使其在授权领域独树一帜。其语言规范已使用 Lean 定理证明器进行了形式化验证,其 Rust 实现也会针对形式化规范进行差分随机测试。这种数学方法为构建安全、可维护的授权系统带来了切实益处。
什么是 Cedar?
Cedar 是一种为授权而生的策略语言,使开发者能够将细粒度权限表达为策略,从而有效地将访问控制与应用逻辑解耦。Cedar 的独特方法结合了以下特性:
- 表现力:支持常见的授权模型,包括基于角色的访问控制(RBAC)、基于属性的访问控制(ABAC)和基于关系的访问控制(ReBAC)。
- 高性能:支持快速、可扩展的实时评估,并确保延迟有界。
- 可分析性:专为自动化推理而设计,支持策略优化和验证。
- 安全性:使用定理证明器(Lean)进行形式化验证,并在经过验证的规范与 Rust 代码实现之间进行严格的差分测试。
客户采用情况
Cedar 已在多样化环境中展示了生产就绪的可靠性。当前的采用者和维护者包括 Cloudflare、MongoDB、StrongDM、Cloudinary 以及 AWS 服务(如 Bedrock AgentCore Policy 和 AWS Systems Manager)。该项目在更广泛的开源社区中也获得了关注,已集成到 Linux 基金会的 Janssen 项目(企业身份和访问管理基础设施)以及 Kubernetes 生态项目(如 Kubernetes-Cedar-Authorizer)中。
正如 Kubernetes 特别兴趣小组(SIG)及工作组联席主席、CNCF 大使 Lucas Käldström 所言:“我最欣赏 Cedar 的一点是其中所蕴含的、关于其为何如此运作的深层知识……它在表现力和可分析性之间取得了精妙的平衡。”
为何选择 CNCF?
AWS 从一开始就构想了 Cedar,并怀有将其置于基金会管理之下的愿景。加入 CNCF 满足了云原生领域的需求,为授权提供了一个中立的、由基金会支持的替代方案,与现有的 CNCF 项目形成互补。基金会成员身份为 Cedar 带来了扩大社区参与的机遇。
CNCF 还为 Cedar 提供了供应商中立的治理模型,使其能够接触到更广泛的贡献者群体,获得增强的集成机会,并收获来自社区驱动的开发反馈。
下一步计划
接下来的步骤是推动 Cedar 从 CNCF 沙箱状态进入孵化阶段,并最终达到毕业状态,以反映 Cedar 已展现出的成熟度和生产就绪性。Cedar 的项目治理正在逐步完善,您可以期待看到更多的 Cedar 社区会议和会议亮相,以补充现有的定期 Cedar 维护者会议。Cedar 的采用率持续增长,我们对其作为 CNCF 一部分加速发展感到兴奋。
参与贡献
Cedar 被 CNCF 接纳,代表着向云原生社区发出邀请,共同塑造授权的未来。该项目欢迎来自各界的贡献,包括实施访问控制的开发者、对策略分析感兴趣的安全专业人员,以及构建自助服务平台的平台工程师。
资源
- 访问 cedarpolicy.com 了解更多信息。
- 尝试 交互式策略演练场。
- 加入 Slack 社区。
- 在 GitHub 上贡献代码。