shiro 的一些核心配置

基于spring+shiro+mybatis+maven
先把一些shiro的核心配置备份一下;

首先是web.xml里的配置

<!-- Spring ApplicationContext 配置文件的路径,可使用通配符,多个路径用,号分隔 此参数用于后
面的 Spring Context Loader -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath*:/applicationContext-shiro.xml
</param-value>
</context-param>


<!-- shiro security filte 配置shiro的过滤器r -->
<filter>
<!-- 这里的 filter-name 要和 spring 的 applicationContext-shiro.xml 里的
org.apache.shiro.spring.web.ShiroFilterFactoryBean 的 bean name 相同 -->
<filter-name>shiroSecurityFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
<init-param>
<param-name>targetFilterLifecycle</param-name>
<param-value>true</param-value>

</init-param>
</filter>
<filter-mapping>
<filter-name>shiroSecurityFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

applicationContext-shiro.xml 文件中,定义 web 支持的 SecurityManager 和
"shiroSecurityFilter"bean 将会被 web.xml 引用。

                                <!-- 开启Shiro注解 -->  
    <bean class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator" depends-on="lifecycleBeanPostProcessor"/>    
        <bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor">    
      <property name="securityManager" ref="securityManager"/>    
    </bean>   

<bean id="shiroSecurityFilter"
class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
<!-- shiro 的核心安全接口 也是必须的 -->
<property name="securityManager" ref="securityManager" />
<!-- 要求登录时的链接 -->
<property name="loginUrl" value="/login.jsp" />
<!-- 登陆成功后要跳转的连接 -->
<property name="successUrl" value="/index.jsp" />
<!-- 未授权时要跳转的连接 -->
<property name="unauthorizedUrl" value="/unauthorized.jsp" />
<!-- shiro 连接约束配置 -->
<propery name="filterChainDefinitions">
<value>

<!--anon 表示可以匿名访问  authc 需要认证-->
/login = authc
/logout = logout
/resource/** = anon
</value>
</property>
</bean>
<bean id="securityManager"
class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
</bean>
   <!-- 保证实现了Shiro内部lifecycle函数的bean执行 -->    
    <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor"/>   

posted @ 2017-01-19 09:33  全村人的希望  阅读(1412)  评论(0)    收藏  举报