shiro框架的学习
权限控制是shiro最核心的东西
Shiro权限声明通常是使用以冒号分隔的表达式。一个权限表达式可以清晰的指定资源类型,允许的操作,可访问的数据。同时,Shiro权限表达式支持简单的通配符,可以更加灵活的进行权限设置。
下面以实例来说明权限表达式。
可查询用户数据
User:view
可查询或编辑用户数据
User:view,edit
可对用户数据进行所有操作
User:* 或 user
可编辑id为123的用户数据
User:edit:123
@ RequiresAuthentication
可以用户类/属性/方法,用于表明当前用户需是经过认证的用户。
使用这个注解之前,需要先在spring-mvc.xml加入一段代码(一定要写在最先加载的xml中,写在后面加载的xml中也不起作用)
<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>
1
2
3
4
5
lifecycleBeanPostProcessor和securityManager是在shiro配置文件中定义好的:
<bean id="lifecycleBeanPostProcessor" class="org.apache.shiro.spring.LifecycleBeanPostProcessor"></bean>
<!-- Shiro安全管理器 -->
<bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager">
<property name="realm" ref="jdbcRealm"></property>
<property name="cacheManager" ref="cacheManager"></property>
</bean>
在前端权限管理处写上权限的字符串
contraller里方法上写上注解,括号里是前端对应的权限字符串
这样就可以控制已认证用户权限了
转载于:https://www.cnblogs.com/xiaohouye/p/11163209.html
shiro框架的学习相关推荐
- shiro将session认证改成token认证_初步学习Shiro框架 第一集
1.什么是Shiro Apache Shiro™ is a powerful and easy-to-use Java security framework that performs authent ...
- ehcache使用_Java 程序员如何使用 Shiro 框架
Java 程序员如何使用 Shiro 框架 一.架构 要学习如何使用Shiro必须先从它的架构谈起,作为一款安全框架Shiro的设计相当精妙.Shiro的应用不依赖任何容器,它也可以在JavaSE下使 ...
- shiro框架---shiro配置介绍(一)
接上一篇文章shiro框架-通过系统介绍shiro框架中的实现逻辑 项目已分享到GitHub上,如果需要的可以看下,springboot+shiro项目Git下载地址. shiro在springb ...
- shiro反序列化漏洞学习(工具+原理+复现)
工具准备 1.java8 C:\Program Files\Java 2.冰蝎 C:\Users\ali\Desktop\tools\Behinder_v4.0.6 3.shiro反序列化 图形化工具 ...
- Shiro 框架详解
Shiro 是一款轻量级的 Java 安全框架,提供了身份认证.授权.加密和会话管理等功能.它可以集成到任何 Java Web 应用程序中,并且易于使用和扩展.Shiro 的设计理念是简洁而灵活,不仅 ...
- shiro框架的基本理解
1.简介 shiro是一个安全框架,可以进行认证.授权.密码加密.会话管理 从外部来解析shiro框架: **Subject:**主体,代表了当前"用户",这个用户不一定是一个具体 ...
- 从权限到shiro框架
说明:本文很多观点和内容来自互联网以及各种资料,如果侵犯了您的权益,请及时联系我,我会删除相关内容. 权限管理 在说具体的框架之前,先把必要的理论知识简单的和大家交代一下. 什么是权限管理 基本上涉及 ...
- 通过 DLPack 构建跨框架深度学习编译器
通过 DLPack 构建跨框架深度学习编译器 深度学习框架,如Tensorflow, PyTorch, and ApacheMxNet,快速原型化和部署深度学习模型提供了强大的工具箱.不幸的是,易用性 ...
- Shiro源码学习之二
接上一篇 Shiro源码学习之一 3.subject.login 进入login public void login(AuthenticationToken token) throws Authent ...
最新文章
- Linux环境编译qtmqtt,qtmqttclient
- 财务人员学python有用吗-python在财务里面有用吗
- go语言socket通信初试
- 14、Java Swing星座选择器界面的实现
- 柴静《认识的人 了解的事》
- MFC的消息映射有什么作用
- Find them, Catch them POJ - 1703(种类并查集)
- C/C++——输入输出特别注意点
- CSS设置文本——行间距
- java方法重载和重载方法_Java中的重载与重载
- 运用SQL Server安全模型来保护数据
- java 评论功能_博客项目实现文章评论功能(重点是评论回复)
- 【数学】用C语言实现函数的定积分—— 把 “定积分定义计算出的值” 和 “牛顿-莱布尼兹公式计算出的值” 两者进行误差比较
- JS中find()和findIndex()
- snmp 统计网络流量
- MacOS系统安装fish,替代bash
- 银河麒麟服务器系统ip可ping通,但是tongweb的默认端口9060、8088不能访问,访问提示404
- STM32F407ZG单片机晶振由例程默认推荐的8M换为自定义的4-26M时的注意事项
- JSEclipse下载与安装
- Mosca MQTT
热门文章
- MySQL5安装配置笔记【超详细】
- 【ZOJ - 2955】Interesting Dart Game(背包,结论,裴蜀定理,数论)
- 【HDU - 1078】FatMouse and Cheese (记忆化搜索dp)
- phpstudy mysql5.1_linux下mysql5.1 和 5.7安装教程详解
- vb简易计算机器程序,vb简易计算器源码
- html css简单form表单源码
- .编写一个注解。并添加元注解,让该注解可以用在方法上,类上,和属性上
- linux的进程pcd,LINUX下查看点云图————point cloud(.ply .vtk .pcd)
- 当年,兔子学姐靠这个面试小抄拿了个22k
- leetcode212. 单词搜索 II