简介:
•ApacheShiro是Java 的一个安全(权限)框架。
•Shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。
•Shiro可以完成:认证、授权、加密、会话管理、与Web 集成、缓存等。
•下载:http://shiro.apache.org/
入门小案例:shiro02-02
QQ截图20201010104321.jpg
QQ截图20201010100919.jpg
QQ截图20201010104341.jpg
DelegatingFilterProxy
- 配置 ShiroFilter.
6.1 id 必须和 web.xml 文件中配置的 DelegatingFilterProxy 的 <filter-name> 一致.
若不一致, 则会抛出: NoSuchBeanDefinitionException. 因为 Shiro 会来 IOC 容器中
查找和 <filter-name> 名字对应的 filter bean.
shiro权限URL配置细节
QQ截图20201010213620.jpg
QQ截图20201010214051.jpg
QQ截图20201010214327.jpg
SimpleAuthenticationInfo这里原理很简单,又有一些值得挖掘的东西。
shiro的密码认证
QQ浏览器截图20201011102406.png
QQ浏览器截图20201011103441.png
多Realm验证
shiro认证策略
QQ浏览器截图20201011160829.png
QQ浏览器截图20201011171358.png
QQ浏览器截图20201011103332.png
QQ浏览器截图20201011170711.png
基本的权限配置已经完成 但是还没有授权
QQ浏览器截图20201011192838.png
QQ浏览器截图20201011194233.png
QQ浏览器截图20201011195501.png
授权
QQ浏览器截图20201011201821.png
shiro标签的使用
QQ浏览器截图20201011203759.png
shiro权限注解
QQ浏览器截图20201011214313.png
QQ浏览器截图20201011214344.png
QQ浏览器截图20201011214407.png
从数据表初始化数据化资源和权限,什么意思呢?
<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
<!-- <property name="filterChainDefinitions">
<value>
/login.jsp = anon
/shiro/login=anon
/shiro/logout = logout
/user.jsp = roles[user]
/admin.jsp = roles[admin]
# everything else requires authentication:
/** = authc
</value>
</property>-->
可以不用再配置文件中写有关name=filterChainDefinitions有关的任何内容
QQ浏览器截图20201012093019.png
QQ浏览器截图20201012093032.png
QQ浏览器截图20201012093108.png
shiro会话管理
QQ浏览器截图20201012093108.png
QQ浏览器截图20201012094318.png
shiro实现rememberMe
QQ浏览器截图20201012110012.png
QQ浏览器截图20201012110101.png