纠结使用哪个,个人更倾向于 ladon, 但如果授权策略多的话,ladon 会不会慢?
ladon 的用法:
{
"description": "One policy to rule them all.",
"subjects": ["users:<peter|ken>", "users:maria", "groups:admins"],
"actions" : ["delete", "<create|update>"],
"effect": "allow",
"resources": [
"resources:articles:<.*>",
"resources:printer"
],
"conditions": {
"remoteIP": {
"type": "CIDRCondition",
"options": {
"cidr": "192.168.0.1/16"
}
}
}
}
acl 的功能肯定都实现了 主体:可以用前缀代表用户,用户组,角色等, 也算是简单实现了 rbac 吧 条件:一些环境属性,可以通过 condtions 设置主体的属性或者资源的属性, 也算是实现了 abac 吧?
ladon 整体的语义与 aws 的特别像,是不是如果我要做一个类似 aws 的权限操作方式,用这个比用 casbin 更简单易用。
casbin 有 model, policy 两个概念,policy 包含策略信息,model 是规则匹配模板, 如果我一个用户,他既授权了一些带属性的(比如 ip 的判断),类似 abac ,又授权了 rbac 的模型, 那就得用两个 model 与两个 policy?
那 casbin 相比 ladon 来说,他的主要优势在哪呢?灵活性更强?性能更好?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.