个人技能总结1:Shiro框架

shiro三大核心模块:Subject(用户)、SecurityManager(框架心脏)、Realm(Shiro与应用安全数据间的“桥梁”) 

shiro重要的一个组件:SecurityManager

spring整合Shiro的配置:

1.导入相应的jar包;

2.在web.xml中配置shiro的过滤器;

3.配置spring-shiro的配置文件:

  

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd" default-lazy-init="false">

  <description>shiro项目安全配置</description>

<!-- 继承自AuthorizingRealm的自有Realm --> <!-- 内存缓冲 --> <!-- 安全管理器 --> <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager"> <property name="realm"> <bean class="" /> </property> <property name="cacheManager"> <bean class="" /> </property> </bean> <!-- 保证实现了Shiro内部lifecycle函数的bean执行 --> <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor" /> <!-- AOP式方法级权限检查,启用注解 --> <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" depends-on="lifecycleBeanPostProcessor"> <property name="proxyTargetClass" value="true" /> </bean> <bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor"> <property name="securityManager" ref="securityManager" /> </bean> <!-- Shiro Filter --> <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean" depends-on="securityManager"> <property name="securityManager" ref="securityManager" /> <property name="loginUrl" value="/login" /> <property name="successUrl" value="/main" /> <property name="unauthorizedUrl" value="/login.jsp" /> <property name="filterChainDefinitions"> <value> /login = authc /logout = logout /res/** = anon /login.jsp = anon /nav/** = anon /files/** = anon /interface/** = anon /capture/** = anon /flow/** = anon /brand/** = anon /weather/** = anon /** = authc </value> </property> </bean> </beans>

 

  配置相关的参数:

  ①.securityManager:这个属性是必须的。

  ②.loginUrl:没有登录的用户请求需要登录的页面时自动跳转到登录页面,不是必须的属性,不输入地址的话会自动寻找项目web项目的根目录下的”/login.jsp”页面。

  ③.successUrl:登录成功默认跳转页面,不配置则跳转至”/”。如果登陆前点击的一个需要登录的页面,则在登录自动跳转到那个需要登录的页面。不跳转到此。

  ④.unauthorizedUrl:没有权限默认跳转的页面。

  ⑤.filterChainDefinitions:

 

4.在spring配置文件中添加spring-shiro的配置:

  <!-- 支持 Shiro对Controller的方法级AOP安全控制 begin   -->
  <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" depends-on="lifecycleBeanPostProcessor">
    <property name="proxyTargetClass" value="true" />
  </bean>
  <bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor">
      <property name="securityManager" ref="securityManager"/>
  </bean>
  <!--  Shiro end -->

 

5.在xml中引入spring-shiro的配置文件和spring的相关配置文件。

 

 

 

 

等待补充。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值