我的Shiro学习之旅(配置到功能实现),第一篇
2015-01-22 11:34
127 查看
我的Shiro学习之旅(配置到功能实现),第一篇
一、我要做什么?
当然了,是要做个权限系统,实现用户,角色,权限的管理。
那这三者之间,要怎么样联系呢,同时要在代码中如何体现呢,说白了,要怎么做?
1、权限是什么。个人理解,就是能不能访问某个资源,某个功能的定义。
你能访问,就是有这个权限,不能访问,就没有这个权限。
那么这里项目中的表现就是,比如说 user/**.action ,这个路径下的访问链接 user/**.action -----》对应 的User.Action这个类里的 方法
说白了,你要控制的就是这些 Action类中的方法,要不要让他访问。
2、角色是什么,就是权限的集合。里面就是一些,你可以访问这个,或不能访问这个,很多个的集合。
比如说,管理员可以访问所有的功能。访客,只能访问部分功能。
在项目中的表现就是,比如说 user/**.action ,这个路径下的访问链接 user/**.action -----》对应 的User.Action这个类里的 方法,在要访问这个方法的时候,
判断一下他是什么角色,如果是你要授权的角色,就让他访问反之不行。
3、用户就是可以获得,角色的对象。
如下图的表现。
对应的数据表
大概的过程
二、为什么要用Shiro?
如上图所示,Shrio做的事情,就是主要的认证,和授权。在这方面Shrio提供了大量的功能,可以拿来直接使用。
如果自己写的话,当然也是可以的,但是代码量也是蛮多的,不如使用Shrio框架来用的简便些。
三、Shiro是什么?
我的理解,就是一个认证和授权的框架。
认证,就是对登录的拦截,验证当前用户是否是登录。
授权,就是对登录后的用户,进行权限的授权,当前用户的角色,是否拥有对应的访问权限。
Shrio的很多概念,这里不复述了,网上的太多了。下面说说Shrio,必须的一些配置。
一、我要做什么?
当然了,是要做个权限系统,实现用户,角色,权限的管理。
那这三者之间,要怎么样联系呢,同时要在代码中如何体现呢,说白了,要怎么做?
1、权限是什么。个人理解,就是能不能访问某个资源,某个功能的定义。
你能访问,就是有这个权限,不能访问,就没有这个权限。
那么这里项目中的表现就是,比如说 user/**.action ,这个路径下的访问链接 user/**.action -----》对应 的User.Action这个类里的 方法
说白了,你要控制的就是这些 Action类中的方法,要不要让他访问。
2、角色是什么,就是权限的集合。里面就是一些,你可以访问这个,或不能访问这个,很多个的集合。
比如说,管理员可以访问所有的功能。访客,只能访问部分功能。
在项目中的表现就是,比如说 user/**.action ,这个路径下的访问链接 user/**.action -----》对应 的User.Action这个类里的 方法,在要访问这个方法的时候,
判断一下他是什么角色,如果是你要授权的角色,就让他访问反之不行。
3、用户就是可以获得,角色的对象。
如下图的表现。
对应的数据表
大概的过程
二、为什么要用Shiro?
如上图所示,Shrio做的事情,就是主要的认证,和授权。在这方面Shrio提供了大量的功能,可以拿来直接使用。
如果自己写的话,当然也是可以的,但是代码量也是蛮多的,不如使用Shrio框架来用的简便些。
三、Shiro是什么?
我的理解,就是一个认证和授权的框架。
认证,就是对登录的拦截,验证当前用户是否是登录。
授权,就是对登录后的用户,进行权限的授权,当前用户的角色,是否拥有对应的访问权限。
Shrio的很多概念,这里不复述了,网上的太多了。下面说说Shrio,必须的一些配置。
相关文章推荐
- 我的Shiro学习之旅(配置到功能实现),第二篇
- SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现
- java shiro配置记住密码功能 RememberMe功能怎么实现
- Android开发学习之以CameraAPI方式实现相机功能(二)——相机功能配置
- python学习之路之案例1(修改haproxy的配置文件,并实现下线、上线的功能)
- SpringBoot+Shiro学习之“记住我”和“GIF验证码”功能的实现
- EXTJS学习系列提高篇:第二篇(转载)作者殷良胜,结合EXT2.2+C#.net实现将数据导入Excel的功能
- [DNN学习所得]让IE也能实现解压缩功能(提供演示源码下载)
- Atlas学习手记(7):使用DragOverlayExtender实现拖放功能
- 关于java打印功能的最简单实现的学习笔记
- Atlas学习手记(7):使用DragOverlayExtender实现拖放功能
- 一步一步实现企业网络架构之九:利用Win2003 NAT功能配置Internet访问
- [学习]实现split功能的函数
- [学习笔记]小型论坛功能——实现按照指定每页的行数来分页显示记录[3]
- ASP.NET学习笔记(5)--"返回上一页"功能的实现
- MonoRail学习笔记五:定制服务实现自定义功能
- Atlas学习手记(7):使用DragOverlayExtender实现拖放功能
- [DNN学习所得]让IE也能实现解压缩功能(提供演示源码下载)
- Atlas学习手记(7):使用DragOverlayExtender实现拖放功能
- 在Label中实现TextBox一样的换行、回车字符显示功能[WEB学习实例]