JAAS,Spring 安全或 Apache Shiro

JAAS, Spring Security or Apache Shiro

关于 java 中的安全框架的快速问题。

迄今为止 JAAS 一直是我的首选框架。是的,人们抱怨说它很难设置,而且它需要连接到你的底层系统,但它确实起作用了 并且具有作为规范的额外好处。

也就是说,我最近一直在研究 Java 中的其他安全框架,网上最受关注的两个框架是:

1 - Spring 安全性

Spring 安全性似乎非常受欢迎,但我发现使用起来有点复杂。

2 - Apache Shiro

Apache Shiro 似乎比 Spring 安全性更直接,但它似乎缺少一些文档。

所以我的问题是,在上面提到的框架中,人们认为我应该花时间学习 Spring Security 还是 Apache Shiro?

(或者我应该坚持使用 JAAS?)

我个人使用 apache shiro,因为它可以使用 shiro.ini 和扩展预构建 类 进行高度自定义。此外,配置只是一个 shiro.inin 文件,其中包含 web.xml 中的一些条目。它有来自第三方的良好文档,例如

http://meri-stuff.blogspot.in/2011/03/apache-shiro-part-1-basics.html

同一页面中的其他部分 link。

它可以与 springs、guice、sso 等集成,所以我选择它。

如果您想在 web/non-web 环境的混合环境中使用 Shiro,它会很棒。它是高度可定制的。我们用它来做 multi-tennant 授权,我们还有一些使用 shiro 实现的自定义权限要求。

您还可以从 shiro 中的几乎每个 class 创建 spring bean,因为代码设置非常干净并且非常适用于 spring 注入(或任何其他依赖注入框架我猜)。

正如开发人员所提到的,缺少文档。我们阅读了大量源代码以获取修复,因此如果您想进行更高级的配置,请注意您必须深入了解源代码。

对于简单的设置,shiro 的标准文档在大多数情况下都能为您提供帮助。

恕我直言 spring 安全性很好,但它没有 shiro 提供的灵活性。

还有第四个选项。
在主流的web架构中,如何通过有效、快速的认证来保护后台提供的restfulapi变得尤为重要。

  1. 对于shiro,它本身不支持restful api。
  2. Spring 安全与 spring 框架密切相关,学习曲线陡峭。

所以我们设计的踏实,我们希望提供一个restfulapi,无框架依赖,可动态修改权限,多种认证策略,更快,易用和扩展的安全框架。欢迎使用

踏实 - https://github.com/tomsun28/sureness