什么是Apache Shiro?

什么是Apache Shiro?

Apache  Shiro是一个强大灵活的Java安全框架,提供了认证、授权、会话管理和安全加密等功能,对于任何一个应用程序,Shiro都可以提供全面的安全管理服务、更易于理解的API。并且相对于其他安全框架,Shiro要简单的多。

Apache Shiro可以做的一些事情:

  • 验证用户以验证其身份

  • 为用户执行访问控制,例如:

    • 确定是否为用户分配了某个安全角色

    • 确定是否允许用户执行某些操作

  • 在任何环境中使用Session API,即使没有Web容器或EJB容器也是如此。

  • 在身份验证,访问控制或会话生命周期内对事件做出反应。

  • 聚合用户安全数据的1个或多个数据源,并将其全部显示为单个复合用户“视图”。

  • 启用单点登录(SSO)功能。

  • 无需登录即可为用户关联启用“记住我”服务。

Apache Shiro与Spring Security的比较

相比较Spring  Security,Shiro要更轻量级,但是Shiro没有Spring Security做的功能强大,实际工作中可能并不需要那么复杂的功能,所以一般的应用程序使用Shiro就够了。

Apache shiro功能

  • Authentication:有时也称为“登录”,这是证明用户是他们所说的人的行为。

  • Authorization:访问控制的过程,即确定“谁”可以访问“什么”。

  • Session Management:即使在非Web或EJB应用程序中,也可以管理特定于用户的会话。

  • Cryptography:使用加密算法保持数据安全,同时仍然易于使用。

  • Web Support:Web 支持,可以非常容易的集成到 Web 环境;

  • Caching:缓存,比如用户登录后,其用户信息、拥有的角色 / 权限不必每次去查,这样可以提高效率;

  • Concurrency:shiro 支持多线程应用的并发验证,即如在一个线程中开启另一个线程,能把权限自动传播过去;

  • Testing:提供测试支持;

  • Run As:允许一个用户假装为另一个用户(如果他们允许)的身份进行访问;

  • Remember Me:记住用户在会话中的身份,这样他们只需要在强制要求时登录。

                  “扫码关注“

猜你喜欢

转载自blog.csdn.net/qq_37745470/article/details/84499110