- 组件分享之后端组件——基于Golang的访问控制库casbin
- 组件分享之后端组件——基于Golang实现的数据库迁移工具dbm
- 组件分享之后端组件——基于Golang的数据库集群系统vites
- 知识分享之Golang——精选的组件库、组件列表,各种golan
- 组件分享之后端组件——一个基于Golang的ORC组件包
- 组件分享之后端组件——基于Golang实现的容器指标的类似顶部的
- 组件分享之后端组件——基于Golang实现的基于LDAP V3协
- 组件分享之后端组件——对golang数据库/sql的通用扩展组件
- 组件分享之后端组件——基于Golang实现的database/s
- 组件分享之后端组件——基于Golang的系统和服务监控系统pro
组件分享之后端组件——基于Golang的访问控制库casbin
背景
近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。
组件基本信息
- 组件:casbin
- 开源协议:Apache-2.0 License
内容
之前给大家分享了认证全套模块Casdoor,今天我们再进行分享一个类似组件模块casbin,Casbin 是一个强大高效的 Golang 项目开源访问控制库。它支持基于各种访问控制模型执行授权。
Casbin支持以下语言进行集成使用:
image.png
支持的类型
- ACL(访问控制列表)
- 具有超级用户的 ACL
- ACL without users:对于没有身份验证或用户登录的系统特别有用。
- 没有资源的 ACL
write-article:某些方案可能通过使用诸如,之类的权限来针对一种资源而不是单个资源read-log。它不控制对特定文章或日志的访问。- RBAC(基于角色的访问控制)
- 具有资源角色的 RBAC:用户和资源都可以同时具有角色(或组)。
- 带有域/租户的 RBAC:用户可以为不同的域/租户拥有不同的角色集。
- ABAC(基于属性的访问控制):语法糖类
resource.Owner可用于获取资源的属性。- RESTful:支持路径,如
/res/*,/res/:id和 HTTP 方法,如GET,POST,PUT,DELETE.- Deny-override:同时支持允许和拒绝授权,拒绝覆盖允许。
- 优先级:可以像防火墙规则一样对策略规则进行优先级排序。
本文声明:
88x31.png
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。









网友评论