跳转至主要内容

RBAC 概览

概述​

基于角色的访问控制(RBAC) 根据用户的角色为其分配权限。 Casbin 实现的 RBAC 支持角色层级、域和条件。

RBAC 与 ACL、ABAC、ReBAC 的对比,见 选择访问控制模型。提供 Go、Node.js、NestJS、Python、Java、Rust 和 gRPC 的分步教程。

Casbin 中的 RBAC​

  • 基本 RBAC:角色层级和用户与角色的分配
  • 带模式匹配的 RBAC:用模式匹配灵活地分配角色
  • 带域的 RBAC:按域划分角色,支持多租户
  • 带条件的 RBAC:在基于角色的权限中加入条件逻辑
  • RBAC96:与 NIST RBAC96 模型的对应

开始使用​

  1. 在 模型 中定义角色层级和请求 / 策略的结构。
  2. 在 策略 中把用户分配到角色(以及可选地把资源分配到角色)。
  3. 用 RBAC API 管理角色和检查权限。

各种变体和实现细节见下面的各个小节。

Comments are powered by giscus and GitHub Discussions. They load from giscus.app and GitHub only after you click the button below.