主要观点:2019 年 Google 发表Zanzibar:Google 一致的全局授权系统,描述了一个兼具灵活性和可扩展性的授权系统,Google 有很多依赖 Zanzibar 的应用且规模巨大。该论文引起轰动,至少有四家公司广告产品受其启发,列举了相关公司及开源产品。
关键信息:
- Zanzibar 系统的核心概念有对象、用户、命名空间、用户集、用户集重写规则、元组等。
- 有简洁的配置语言示例。
- 讨论了规格和实现细节,如与 Google 大规模及全球分布服务相关,基于 Spanner 数据库,有多种服务器架构解决缓存和热点问题等。
- Zanzibar 兼具灵活的关系型访问控制模型和保证规模与一致性的系统。
重要细节: - 至少四家公司广告产品受 Zanzibar 启发,包括 WorkOS、Authzed、auth0、Ory、Permify 等,还有相关开源产品如 Ory Keto、Warrant、SpiceDB、Permify、OpenFGA 等。
- Zanzibar 利用 Spanner 的 TrueTime 实现时间准确性以解决“新敌人”问题,有 zookies 等概念。
- 不同受 Zanzibar 启发的产品在 zookies 相关实现上情况不同,有的有类似概念,有的则没有。
- 作者认为对于自身需求,Zanzibar 中关于分布式一致性的部分有些过度,更想要其 API 表面,可选择第三方服务或简化实现。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。