Apache Shiro:Java安全框架

Apache Shiro 是一个强大的Java语言框架,通过简单易用的API提供了认证、授权、加密、session管理等功能。可用于命令行应用、手机应用、web应用和企业级系统等各种应用。

shiro

使用 Apache Shiro 可以做到:

  • 验证用户身份。
  • 对用户进行访问控制,比如:
    • 判断某个用户是否被赋予某个特定角色
    • 判断某个用户是否被允许执行某些操作
  • 可以在各种环境下使用 Session API ,即使是不在web或EJB容器中
  • 对认证、访问控制或在会话生命周期中的事件进行响应处理
  • 可以聚合使用一个或多个安全数据的数据源而使用者只需了解一层抽象
  • 使用单点登录(SSO)。
  • 使用“下次自动登陆(Remember Me)”等等

而所有这些都已经集成于Shiro统一易用的API中。

主要功能

Apache Shiro 框架提供了很多功能,下图展示了Shiro的着重点:

ShiroFeatures

Shiro主要面向Shiro开发团队所谓的“应用安全的四大基础” ——认证、授权、会话管理与密码加密:

  • 认证: 或“登录”,用以验证用户身份。
  • 授权: 访问控制, 比如决定谁可以访问某些资源。
  • 会话管理: 管理用户相关的session,即使是在非web或EJB应用中。
  • 加密:可以非常方便地使用(各种)加密算法保证数据的安全。

Shiro还包含了一些其他功能以支持不同的应用环境,其中:

  • 对Web的支持: Shiro自带的支持Web的API可以很容易地保证web应用的安全。
  • 缓存:缓存在Apache Shiro的API中是“一等公民”,可以保证操作的快速高效。
  • 并发: Apache Shiro的并发功能支持开发多线程的应用。
  • 测试:对测试的支持可以帮助你编写单元测试与集成测试。
  • 以某个身份运行(Run As):允许一个用户使用另外某个用户的身份(执行操作),这个功能常用于管理场景中(比如“以管理员身份运行”)。
  • 自动登陆(Remember Me):可以跨会话记住用户身份,只在某些特殊情况下才需要强制登录。

官方文档

官方网站:http://shiro.apache.org/
开源地址:https://github.com/apache/shiro

打赏支持我整理更多优质资源,谢谢!

打赏编辑

打赏支持我整理更多优质资源,谢谢!

任选一种支付方式

1 1 收藏

资源整理者简介:刘立华

java开发,技术爱好者,乐于助人。 个人主页 · 贡献了32个资源 · 1 ·  


直接登录
最新评论
  • 呆呆   2015/12/14

    实习的时候有幸用过。
    所有的验证API都从Subject对象开始,底层则是一个责任链负责处理那种不同的任务。
    框架的代码量不大,文档齐全设计清晰,直接看源代码很快就能摸清楚整个责任链的结构。用过那么多Java框架,这个框架是让我最舒服的。
    强烈推荐大家用一下

推荐关注

按分类快速查找

关于资源导航
  • 伯乐在线资源导航收录优秀的工具资源。内容覆盖开发、设计、产品和管理等IT互联网行业相关的领域。目前已经收录 1439 项工具资源。
    推送伯乐头条热点内容微信号:jobbole 分享干货的技术类微信号:iProgrammer