Shiro12-Shiro 整合开发-注解授权

我们之前在前面说过三种授权方式

现在我们就是用 第二种 和 第三种方式

注解方式

建议在 controller 层进行方法授权.

为什么说建议呢?
因为在 service 层也是可以授权的, 但是不直观. 因为有些方法是公用的而有些方法是针对某些业务逻辑的,所以建议在 controller 层进行授权.

我们使用@RequiresPermissions() 注解来添加执行权限

//商品信息方法
@RequestMapping("/queryItems")
@RequiresPermissions("item:query")//执行queryItems需要"item:query"权限
public ModelAndView queryItems(HttpServletRequest request) throws Exception {
    // 指定逻辑视图名
    modelAndView.setViewName("itemsList");
    return modelAndView;
}

配置开启 aop 对类代理

<!-- 开启aop,对类代理 -->
<aop:config proxy-target-class="true"></aop:config>
<!-- 开启shiro注解支持 -->
<bean class="org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor">
    <property name="securityManager" ref="securityManager" />
</bean>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,830评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,067评论 19 139
  • 前两天,我关注了婚姻育儿这个专题,也将自己写的两篇文章投稿了,但是今天看了自己写的《绝望的主妇》一位简友的评论以后...
    米兰文萃阅读 541评论 4 4
  • 写不出一首绚丽的诗,感慨不出几个句子。明天是不是还有意外,明天会不会还在。
    语不成书阅读 98评论 0 1
  • 我们都会老去。脸上布慢皱纹,两鬓斑白,在那时,回望一生,是心满意足? 还是翻然醒悟? 人生一世间, 如白驹之过...
    唐月白阅读 319评论 0 0