黑马程序员技术交流社区
标题: 【郑州校区】bos项目笔记之chapter09_系统分析、环境搭建(5) [打印本页]
作者: 谷粒姐姐 时间: 2018-4-10 10:43
标题: 【郑州校区】bos项目笔记之chapter09_系统分析、环境搭建(5)
本帖最后由 谷粒姐姐 于 2018-4-10 10:45 编辑
6. Apache Shiro 实现页面元素显示控制 (了解)
这些标签用于 JSP 页面,控制一些元素是否可见
对这些按钮是否显示进行控制 ,没有权限的用户无法看到对应按钮的
1、 在页面引入 shiro 标签库
2、 通过 shiro 自带标签控制按钮是否显示
7. Apache Shiro 权限控制(小结) 第一种:URL 级别粗粒度权限控制
配置 web.xml 的 shiroFilter 拦截 /*
在 spring 的 applicationContext*.xml 配置文件中配置同名 bean,配置
filterChainDefinitions 拦截控制规则
xxx.html* = anon (未登录可以访问) xxx.html* =authc (必须登录才能访问 ) xxx.html* = perms[权限] (需要特定权限才能访问) xxx.html* = roles[角色] (需要特定角色才能访问 )
第二种: 方法级别细粒度权限控制
在 spring 的 applicationContext*.xml 配置 spring aop 对 spring 管理 bean 对象开启 shiro 注解支持
@RequiresPermissions(权限) 需要特定权限才能访问
@RequiresRoles(角色) 需要特定角色才能访问
@RequiresAuthentication 需要认证才能访问
第三种:通过 shiro 自定义标签,实现页面元素显示控制
<shiro:authenticated> 登录后才能访问
<shiro:hasPermission name="abc"> 需要特定权限才能访问
<shiro:hasRole name="abc"> 需要特定角色才能访问
第四种:在程序中通过代码 判断用户是否具有指定权限( 不太常用 ,有代码侵入 )
补充: 权限表达式 “:”代表子权限
权限 courier 包含 courier:add、courier:list、courier:* ,如果用户具有父权限,操作
所有子权限功能
权限 courier:list 包含 courier:list:10
bos项目笔记之chapter08_系统分析、环境搭建(5)
作者: 谷粒姐姐 时间: 2018-4-10 10:45
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |