Warrant开源访问控制服务

联合创作 · 2023-09-30 08:32

Warrant 是为开发人员和产品团队构建的应用程序访问控制服务。它是一种集中式授权服务(受 Google Zanzibar 启发),旨在从构建软件产品的团队中抽象出管理用户访问控制的复杂性,因此他们可以从第一天起就为客户提供一流的访问控制,并且集中精力打造自己的核心产品。

Warrant 允许你定义、存储和管理你的产品的授权模型和访问规则(称之为 warrants),然后在运行时从你的应用程序检查或查询这些规则。这允许你轻松实现任何访问控制模型,从较粗的基于角色的访问控制(RBAC)(例如,does [user:1] have [permission:view-billing-details]?)到细粒度的基于关系的访问控制(ReBAC)(例如is [user:1] an [editor] of [document:docA]?)和基于属性的访问控制(ABAC)(例如,is [user:1] in [department:accounting]?)。

在此处查看其他一些常见用例。

特性:

  • 一个实时、低延迟的checkAPI,用于在运行时在您的应用程序中执行访问检查(例如 is user:A editor of tenant:X?)
  • 实时查询API,查询和审计特定主体或对象的访问规则(例如which users in tenant:1 have access to object:A?
  • 对角色和权限 (RBAC) + API 端点的内置支持,用于从你的应用程序创建和管理自定义角色和权限
  • 内置支持多租户访问控制
    • 为每个租户定义角色、权限、访问规则等
    • 支持用户在你的应用程序中的访问级别取决于他们当前登录的租户(或角色)的场景。
  • 对定价层的内置支持——根据产品的定价计划(例如免费层、增长层、业务层、企业层等)实时控制对应用程序功能的访问
  • 允许/拒绝访问特定页面/UI 元素的权限感知前端组件
  • 用于构建 UI 的预构建组件和可嵌入页面,使客户能够为自己和团队成员管理角色、权限和其他访问规则
  • 与内部和第三方身份验证/身份提供商(如 Auth0)集成
  • 跟踪授权模型和访问规则的所有更新的全局事件日志,使审计、警报和调试变得简单
  • 最流行的语言和框架的 SDK
浏览 2
点赞
评论
收藏
分享

手机扫一扫分享

分享
编辑
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
编辑
举报