casbin 真的好用么

2019-02-20 13:07:36 +08:00
 madNeal

利用 casbin 做权限控制,网上一搜都是 casbin。但是真的就我自己用的来讲,我真的觉得 casbin 真的好晦涩难懂,而且那个配置也感觉不是特别好配。想用 casbin 做多租户得数据控制,但我实在理解不了那个数据是如何定义的。感觉其他的框架使用 casbin 也比较基础,用了一点点。

以上只是我的一些个人观点,不知道大家有没有什么好的用法,可以实现这样得功能。

17511 次点击
所在节点    Go 编程语言
9 条回复
HarrisonZ
2019-02-20 13:12:17 +08:00
https://github.com/ory/ladon 类似于 aws iam 的规则接口,比 casbin 易读多了。
madNeal
2019-02-20 13:17:31 +08:00
@HarrisonZ 感谢,去学习下
6diyipi
2019-02-20 14:30:58 +08:00
不好, 看着就烦
ryanking8215
2019-02-20 16:58:43 +08:00
没用过 casbin, 但是看过。
乍一眼晦涩难懂,但仔细看核心就 2 个,一个是规则模板,一个是数据。规则模板就是你想用什么规则管理权限,ACL,RBAC 等;数据有各种 backend,例如文件,数据库等。

casbin 把权限系统抽象出来了,你可以在你的业务系统中使用不同的 casbin 实例,例如前台业务权限和后台管理权限的管理方法是不同的。当然你也可以抛弃 casbin,在业务代码里自行处理权限。
hsluoyz
2019-03-10 10:41:30 +08:00
我是 casbin 作者。说两点:

1 ) casbin 确实很复杂,但是表达能力也很强。如果你的权限需求很复杂,怎么实现都会复杂, 复杂性不可能凭空降低。而 casbin 能够帮你把代码实现上的复杂性,转换为 Casbin 配置上的复杂性,相比而言已经好多了。AWS IAM 类的策略表达能力很捉急。

2 ) casbin 有中文 QQ 群可以答疑,作者也是中国人,群里有些中文资料。如果要用 ladon
等国外的库,答疑成本就高多了

3 ) QQ 群号在 github 最下面
ecoolper
2019-09-03 21:46:58 +08:00
对 casbin 表示关注
dodo2012
2019-09-30 17:37:23 +08:00
用了,感觉还好吧,看下文档就可以用起来,但如果和系统对接起来,保存在数据库,加上自由配制就麻烦些
Loocor
2023-06-06 00:09:20 +08:00
实话说,我还是比较倾向楼主的感受。casbin 的文档学术味太浓了,反而具体怎么用,缺少清晰明了无杂音的介绍。
作为近似轮子的对比,sa-token 的文档直接明了,是啥,想达到什么目的,该怎么做,看着目录很快就能找到。
Casbin 我想应该也很强大,但文档中概念术语简写满天飞,伪代码和不完整的样本代码混杂,真的看起来很吃力。
前面作者回答强调本地中文服务的优势,但现在看 casbin 官网中文文档明显的机翻味,而且感觉没校对,policy 一会儿叫策略一会儿叫政策,看起来太别扭了。
再就是右下角销售 James 太敬业了,每次进入页面他都要展开弹窗问我一次🤣
potcode99
254 天前
@Loocor 实现一个最基础的基于 owner 资源权限管控的需求都很难入门。隔了几年,好几次回头看还是看不明白。文档基本都在讲资源继承的鉴权...一般场景反而讲的少

1. 模型定义晦涩不直观,p 和 r 还能理解,到了 g 和 e 那块的时候完全就不知道在干啥了。既然 g 的作用是进行 graph 查找,为啥要定义两个 g ,还取名 g2...
2. 设计上没有做责任分离,把各种 policy 混杂在一起,rbac 和 abac 定义混在一起,加重了认知负担

说到底还是配置的表达能力不行,可能它的功能很强大,只是我没弄懂。但是采纳进项目的认知成本太高

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/536855

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX