Apache Shiro 是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring Security,可能没有 Spring Security 做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,所以使用小而简单的 Shiro 就足够了。

Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等。

Authentication:身份认证 / 登录,验证用户是不是拥有相应的身份;

Authorization:授权,即权限验证,验证某个已认证的用户是否拥有某个权限;即判断用户是否能做事情,常见的如:验证某个用户是否拥有某个角色。或者细粒度的验证某个用户对某个资源是否具有某个权限;

Session Management:会话管理,即用户登录后就是一次会话,在没有退出之前,它的所有信息都在会话中;会话可以是普通 JavaSE 环境的,也可以是如 Web 环境的;

Remember Me:记住我,这个是非常常见的功能,即一次登录后,下次再来的话不用登录了。

结构:

SecurityManager:安全管理器;即所有与安全有关的操作都会与 SecurityManager 交互;且它管理着所有 Subject;可以看出它是 Shiro 的核心,它负责与后边介绍的其他组件进行交互

Realm:域,Shiro 从从 Realm 获取安全数据(如用户、角色、权限)

shrio简介--w3cschool相关推荐

  1. WMS 原型详解 | 产品经理最讨厌的系统

    导语 大家好,我是智能仓储物流技术研习社的社长,老K.WMS是我们仓储物流系统中非常重要的一部分.今天以一个WMS原型案例,拆解下系统的设计难点和业务流程. 查看全文 http://www.taodu ...

  2. HTML中如何键入空格

    HTML中如何键入空格 一个空格的键入 在 html 网页中一个空格,我们可以键入"空格"键即可实现. 多个 html 空格字符 如果在 html 中想实现多个空格间隙,如果是键入 ...

  3. SQLite 简介(http://www.w3cschool.cc/sqlite/sqlite-intro.html)

    SQLite 简介 本教程帮助您了解什么是 SQLite,它与 SQL 之间的不同,为什么需要它,以及它的应用程序数据库处理方式. SQLite是一个软件库,实现了自给自足的.无服务器的.零配置的.事 ...

  4. w3cschool的jQuery Mobile教程总结

    w3cschool的jQuery Mobile教程总结 jQuery Mobile 是针对触屏智能手机与平板电脑的网页开发框架. jQuery Mobile 工作于所有主流的智能手机和平板电脑上. 一 ...

  5. XML简介及基本语法

    目录 一.xml的简介(了解) 二.xml的语法 1.文档声明 2.元素/标签定义 3.属性 4.注释 5.转义字符 6.CDATA区 7.PI指令(处理指令) 三.xml的约束 四.DTD约束 五. ...

  6. JavaScript基础三部曲(一):JavaScript简介及ECMAScript部分

    文章目录 一.JavaScript简介 1.什么是JavaScript 2.JavaScript的三个部分: 1)核心(ECMAScript) 2)文档对象模型(DOM) 3)浏览器对象模型(BOM) ...

  7. IntelliJ IDEA的简介

    IntelliJ IDEA的简介 idea从入门到精通总目录 简介 idea的主要功能介绍 官网介绍 版本特性介绍 相关链接介绍 idea从入门到精通总目录 idea从入门到精通 简介   IDEA ...

  8. JavaScript 入门教程||javascript 简介||JavaScript 用法

    javascript 简介 JavaScript 是互联网上最流行的脚本语言,这门语言可用于 HTML 和 web,更可广泛用于服务器.PC.笔记本电脑.平板电脑和智能手机等设备. JavaScrip ...

  9. 【OpenMV小车——第1.2篇】OpenMV主控板的简介与入门使用

    前言: 视觉小车最重要的是视觉功能,其实现方式主要有: Opencv+外置计算机摄像头.需要计算机作为上位机. Stm32+OV7670.较难,大师级. OpenMV摄像头.较简单,入门级. 博主刚开 ...

最新文章

  1. 打通B/S与C/S !让HTML5 WebSocket与.NET Socket公用同一个服务端!
  2. Python入门100题 | 第051题
  3. 大数据领域33个预测,开启未知的2016
  4. 谈谈两种标准库类型---string和vector
  5. linux虚拟主机_云服务器与虚拟主机的区别
  6. Apache Sentry 第一弹:Server启动、连接Hue、分组详解
  7. 第6次结对作业--郑锦伟古维城
  8. 当信贷风控遇见机器学习,模型还是规则?
  9. STM32电机库5.4开源注释 KEIL工程文件 辅助理解S STM32电机库5.4开源注释
  10. 拉普拉斯逆变换matlab,利用MATLAB实现拉普拉斯变换及其逆变换.doc
  11. 用php表示掷骰子两次比大小,php实现的中秋博饼游戏之掷骰子并输出结果功能详解...
  12. SSM SpringBoot vue快递柜管理系统
  13. QT使用QAxWidget读取Excel数据
  14. Scala 继承和特质
  15. 学生成绩排名 (用结构体数组按成绩排名)
  16. QString、int、char、QByteArray直接的相互转换
  17. GitHub 重磅更新,可以创建免费私有仓库了
  18. 如何下载网页上网站上的视频
  19. 通过bat批处理命令进行adb push和adb pull批量拉取文件
  20. 443端口和80端口的区别?

热门文章

  1. 什么是生命周期?Activity生命周期的三种状态
  2. 双目相机标定以及立体测距原理及OpenCV实现
  3. Java选择题考试系统
  4. (附源码)SSM医疗健康查询系统JAVA计算机毕业设计项目
  5. Mysql Yum安装
  6. idea配置git仓库(idea配置git)详细
  7. 计算机简单易懂知识,如何选购电脑主板?小白装机简单易懂的电脑主板选购知识指南...
  8. Redis(10)哨兵
  9. 视觉类比VISALOGY: Answering Visual Analogy Questions--NIPS2015
  10. 在职场要避免这些“潜规则”