Board logo

标题: 遇到问题----shrio------shiro自定义filters无效 完整代码 [打印本页]

作者: look_w    时间: 2019-5-13 09:39     标题: 遇到问题----shrio------shiro自定义filters无效 完整代码

完整shiro.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more
        contributor license agreements. See the NOTICE file ~ distributed with this
        work for additional information ~ regarding copyright ownership. The ASF
        licenses this file ~ to you under the Apache License, Version 2.0 (the ~
        "License"); you may not use this file except in compliance ~ with the License.
        You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0
        ~ ~ Unless required by applicable law or agreed to in writing, ~ software
        distributed under the License is distributed on an ~ "AS IS" BASIS, WITHOUT
        WARRANTIES OR CONDITIONS OF ANY ~ KIND, either express or implied. See the
        License for the ~ specific language governing permissions and limitations
        ~ under the License. -->
    <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.0.xsd">
     
     
     
        <bean id="mongoRealm" class="com.test.web.support.shiro.MyShiro">
            <property name="credentialsMatcher">
                <bean class="org.apache.shiro.authc.credential.SimpleCredentialsMatcher"></bean>
            </property>
            <property name="mongoTemplate" ref="mongoTemplate" />
        </bean>
     
        <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor" />
     
     
        
     
        <!-- securityManager -->
        <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
            <!-- <property name="cacheManager" ref="cacheManager" /> -->
            <!-- <property name="sessionManager" ref="sessionManager" /> -->
            <!-- Single realm app. If you have multiple realms, use the 'realms' property
                instead. -->
            <property name="rememberMeManager">
                <bean class="org.apache.shiro.web.mgt.CookieRememberMeManager">
                    <property name="cookie">
                        <bean class="org.apache.shiro.web.servlet.SimpleCookie">
                            <constructor-arg value="sid" />
                            <!--设置Cookie名字,默认为JSESSIONID -->
                            <property name="name" value="WEBSID" />
                        </bean>
                    </property>
                </bean>
            </property>
            <property name="realm" ref="mongoRealm" />
        </bean>
     
     
        <!-- shiroFilter -->
        <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean" >
            <property name="securityManager" ref="securityManager" />
            <property name="loginUrl" value="/login" />
            <property name="unauthorizedUrl" value="/403" />
            <property name="filters">
                <map>
                <entry key="authc">
                        <bean
                            class="com.test.web.support.shiro.AjaxCompatibleAuthenticationFilter"></bean>
                    </entry>
                <entry key="roles">  
                        <bean  
                            class="com.test.web.support.shiro.CustomRolesAuthorizationFilter" />  
                    </entry>  
                </map>
            </property>
            <property name="filterChainDefinitions">
                <value>
                    /**/*.* = anon
                    /login = anon
                    /student/** =roles["admin,normal,assistant"]
                    /teacher/** =roles["admin,normal,assistant"]
                    /class/** =roles["admin,normal,assistant"]
                    /grade/** =roles["admin,normal"]        
                    /** = authc
                </value>
            </property>
        </bean>
    </beans>




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0