shiro 框架的学习总结

来源:互联网 发布:向男友求饶知乎 编辑:程序博客网 时间:2024/05/17 21:54
shiro 框架的核心功能:认证,授权,加密,会话管理;
框架调用流程:ApplicatonCode(程序代码)->Subject(接口)->SecurityManager(安全管理器)->realm(用于操作数据类似于DAO);

使用shiro框架首先应用第三发放jar包,如果是使用maven引入坐标即可;

1.首先在web-info中配置shiro的过滤器(注意要配置在struts过滤器的前面)filter-name:自己定义,filter-class:org.springframework.web.filter.DelegatingFilterProxy,过滤路径配置为所有(/*);

2.使用SSH框架时在Sping容器中配置一个bean,id和filter-name一致        class:org.apache.shiro.spring.web.ShiroFilterFactoryBean 注入其class属性:
a.安全管理器securityManager
b.配置认证失败转发页面loginUrl
c.配置认证成功转发页面successUrl
d.配置认证权限不足页面unauthorizedUrl
e.配置校验规则filterChainDefinitions
校验规则例子如下:<value>
                                 /login.html = anon
                                /js/** = anon
                               /css/** = anon
                               /images/** = anon
                               /validatecode.jsp* = anon
                              /userAction_login.action = anon
                              /pages/base/courier.jsp=perms["courier"]
                              /pages/base/standard.jsp=perms["standard"]
                              /** = authc
                            </value>
authc代表shiro框架提供的一个过滤器,检验用户是否完成登陆;anno代表可以匿名访问;

安全管理器的配置:id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager
其属性配置<property name="realm" ref="bosLoginRealm"></property>
还包括缓存<property name="cacheManager" ref="cacheManager"></property>以为我们不用每次都查询数据库;
具体的登陆授权认证代码课参考一下代码:

对于shiro框架调用的流程还缺少realm进行认证授权的过程;
认证:

授权:






原创粉丝点击