Auth0 介绍 zanzibar.academy

432 阅读5分钟

虽然我们的客户告诉我们,他们很欣赏我们的认证(AuthN)功能,但我们看到越来越多的人要求扩大我们的授权(AuthZ)产品,以帮助建设者加速开发。这就是为什么我们发布了组织角色等关键功能。

在阅读谷歌描述其全球访问系统的桑给巴尔文件时,我们发现这种方法是非常有创意和鼓舞人心的。它有足够的灵活性来支持他们的许多产品,并且是可扩展的,高度可靠的,而且速度极快。像AirbnbCarta这样的公司已经开发了他们自己的版本,而公司和新产品的建立也受到了Zanzibar的启发。这就是为什么我们相信使用桑给巴尔模式建立的授权系统在未来几年内会越来越多。

什么是Zanzibar

Zanzibar是谷歌的全球授权系统。它为YouTube、Google Drive、Google Workspaces、Google Cloud Platform及其他服务提供授权。它推动了谷歌的核心协作功能,如与人分享文件或与朋友分享照片。像谷歌制造的任何东西一样,它必须扩展到数十亿的用户和数万亿的数字对象。为这么多的人和对象组合创建一个访问控制系统是一项艰巨的任务,谷歌在他们的2019年谷歌桑给巴尔文件中阐述了他们如何做到这一点。它谈到了他们所做的不同考虑和权衡。简单性和可扩展性是关键的考虑因素,因为谷歌需要确保其内部团队可以将该系统用于广泛的用例,并确定它将如何回应他们的具体需求。

自该文件发布以来,桑给巴尔的受欢迎程度稳步上升。在过去的一年里,我们开始与各组织讨论他们的实施经验,并从哪些工作和不工作中学习。你可以在这里找到其中的一些讨论

Zanzibar

介绍桑给巴尔学院

我们一直在努力创造对全球发展社区有用的内容,今天我们在授权的道路上又迈出了重要的一步,发布了zanzibar.academy学习网站。Zanzibar.academy旨在帮助建设者了解Zanzibar风格系统的价值和力量,就像JWT.io教育和传播对JSON Web Token标准的理解一样。这是一个让建设者以循序渐进的方式学习Zanzibar概念的地方。

更广泛的AuthZ世界中的ReBAC

Google Zanzibar与其他AuthZ系统的主要区别之一是,Google Zanzibar使用基于图形的数据结构来创建基于关系的访问控制(ReBAC)。ReBAC集中了更多的数据,因此访问控制列表(ACL)的管理就不那么麻烦了。

由于没有可行的替代方案,企业一直在推出自己的AuthZ,或扩展OPA等系统,这些系统处理基于属性的访问控制(ABAC)的授权策略,以管理其典型用例之外的东西。这些类型的系统让开发者对他们的授权决策有了大量的控制,但同时也让他们承担了大量的开发和管理责任。策略也很难建立,很难在搜索功能中基于策略系统创建可访问资源的过滤列表。

ReBAC

相反,Zanzibar提供了一个系统,可以为应用程序中的各种目的进行索引和反向索引。它很容易扩展,所以可以很容易地添加新的功能。在我们自己的版本中,我们正在努力通过创建一个开箱即用的断言系统来使这个过程对开发者来说更容易,所以开发者可以对他们实现的变化创建自动测试。桑给巴尔式的系统不会解决所有的AtuthZ问题,OPA式的ABAC系统仍有重要的地位,但随着时间的推移,桑给巴尔系统只会被更广泛地采用。

支持建设者

Auth0在这里是为了支持建设者--坦率地说,谷歌团队所创造的东西是鼓舞人心的。但从论文中学习并不总是容易的。通过桑给巴尔学院的网站和相关介绍,我们试图通过互动的描述和例子使桑给巴尔论文中的概念和实践更容易被理解------并始终将其完全归功于原始团队。

我们通过创建我们自己的版本供开发者使用来进一步支持建设者。你可以在这里探索我们的实现。在桑给巴尔论文的启发下,我们运用我们8年来为开发者构建工具的经验,构建了一个所有构建者都会乐于使用的版本。

Supporting

我们很高兴你能在zanzibar.academy了解更多,我们将在那里见到你如果你有兴趣了解更多关于Zanzibar和Auth0s基于Zanzibar的新AuthZ平台,请加入我们的Discord社区


© 2013-2021 Auth0公司。保留所有权利。