开发者社区> 问答> 正文

shiro 注解没起作用 配置报错 

我在spring mvc的controller方法上,加了需要admin角色这个注解,但是好像没起作用,我用student角色也能访问这个函数。这是为什么呢?  
@RequiresRoles("admin")     @RequestMapping(value = "/ecampuscenter")

    public String ecampuscenter() {

        logger.info("-------------------ecampus center request - --------------------------");

        return "loginSuccess";

    }

shiro部分配置如下
<!-- Shiro的Web过滤器 -->     <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">         <property name="securityManager" ref="securityManager"/>         <!--首页,进入到/security/showloginfor控制器方法内。-->         <property name="loginUrl" value="/security/login"/>         <!--<property name="successUrl" value="/home.jsp"/>-->         <!--<property name="unauthorizedUrl" value="/unauthorized.jsp"/>-->         <property name="filters">             <util:map>                 <entry key="authc" value-ref="formAuthenticationFilter"/>             </util:map>         </property>

        <property name="filterChainDefinitions">             <value>                 /security/login=anon                 /**=authc             </value>         </property>     </bean>

    <!-- Shiro生命周期处理器-->     <bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor"/>

    <!-- Spring AOP auto-proxy creation (required to support Shiro annotations) -->     <!-- 启用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>

展开
收起
kun坤 2020-05-31 18:13:48 542 0
1 条回答
写回答
取消 提交回答
  • xm怎么配置的啊?有没有配置 <aop:aspectj-autoproxy proxy-target-class="true"/>
    同时还要加
    aspectjrt-1.6.11.jar, aspectjweaver-1.6.12.jar, cglib-2.2.2.jar, asm-3.3.1.jar,
    这些个包,版本可以自己换 ######@wangma 嗯,后来我用代码实现了,不用注解了,差不多。######回复 @change_solider : 你的spring的xml配置文件在哪里就可以放那里面.######上面我补充了一下shiro配置, <aop:aspectj-autoproxy proxy-target-class="true"/> 这一句应该加在什么地方 呢?######用游客能不能访问呢######游客必然不能了。

    2020-05-31 18:13:54
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载