我试图找到任何开源或商业实现的基于属性的访问控制 (ABAC) 范式,它们将与 Spring Security 或 Apache Shiro 框架一起工作。现在我找不到任何一个。
我不认为我是第一个需要这种功能的人 - 所以你能推荐支持这个的框架吗?

另外,Permissions in Apache Shiro 可以被认为是 ABAC 范式实现的一个特例吗?

最佳答案

jCasbin 是一个强大且高效的 Java 项目开源访问控制库。它为基于各种访问控制模型的强制授权提供支持。 ABAC 是 jCasbin 支持的模型之一。
ABAC :像资源一样的语法糖。所有者可用于获取资源的属性。
在 jCasbin 中,访问控制模型被抽象为基于 PERM 元模型(Policy、Effect、Request、Matches)的 CONF 文件。因此,切换或升级项目的授权机制就像修改配置一样简单。您可以通过组合可用模型来自定义您自己的访问控制模型。例如,您可以将 RBAC 角色和 ABAC 属性放在一个模型中并共享一组策略规则。
它通过插件支持 Spring Boot:jcasbinspring-boott-plugin
此外,还有另一个名为 EasyAback 的开源项目。 (原始项目文件是用俄文写的,我翻译了它们,另外添加了一些其他文件和图表 link )

关于spring - ABAC 支持 Spring Security 或 Apache Shiro,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38960065/

10-10 22:45