Shiro

ApacheShiro

 

Apache Shiro是一个强大且易用的Java安全框架,执行身份验证、授权、密码和会话管理。

 

内容介绍:Shiro RBAC框架 =   Role base access Control

利用角色权限对系统进行控制、利用角色权限对前端进行控制、利用角色权限对系统内容进行控制、对登陆授权进行控制

 

三个核心组件:Subject, SecurityManager 和 Realms:

 Shiro

Subject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。它仅仅意味着“当前跟软件交互的东西”。但考虑到大多数目的和用途,你可以把它认为是Shiro的“用户”概念。
  Subject代表了当前用户的安全操作,SecurityManager则管理所有用户的安全操作。


SecurityManager:它是Shiro框架的核心,典型的Facade模式,Shiro通过SecurityManager来管理内部组件实例,并通过它来提供安全管理的各种服务。


Realm: Realm充当了Shiro与应用安全数据间的“桥梁”或者“连接器”。也就是说,当对用户执行认证(登录)和授权(访问控制)验证时,Shiro会从应用配置的Realm中查找用户及其权限信息。

 

1.搭建基础环境导包,配置

2.常见RBAC项目数据库设计

用户通过角色来控制权限。 数据库权限模式的一种

 Shiro

 

3.搭建

 (1)ehcache-shiro.xml(2)pom.xml引入shiro (3)shiroconfiguration.java 配置(4)realm.java配置

效果是不管输入什么都强制跳转login页面,原理 shiroconfiguration是基于AOP来拦截

4.认证过程并实现

 完成,shiro

5.认证信息与移除登录

 完成,      shirotwo

(设置一处登录:在另一处登录会挤掉之前的登录,如:两个浏览器登录,另一个会挤掉

在realm中,sessionDao配置,完成,看代码注解B部分。

6.角色权限控制

 

 

 

7.控制页面显示内容

 

8.实战