关于权限控制的讨论
来源:互联网 发布:东芝181usb端口驱动 编辑:程序博客网 时间:2024/05/17 05:53
十年前,我们是如何做权限控制的?如何定义permission?
那时候,我们都基于纯纯的JSP/Servlet做系统,权限的定义依据的是URL。
某个用户(角色)拥有对某个URL的访问权限。
那个时候的URL都长得很像。
http://mydomain.com/channelAAA/edit.do?id=0000http://mydomain.com/channelBBB/show.do/?id=1111
在这个URL中,包含了三个信息:
- 资源,比如 /channelAAA 或者 /channelBBB
- 操作,比如 edit.do 或者 show.do
- 实例,比如 id=00000
所以说,其实权限的定义无非就是对某个资源的某个实例的某个操作。
后来,我们的权限定义进步了,我们可以利用反射简化一些事情。于是,权限定义到了类里面,比如我们可以放在某个Controller里面。
public UserController { public BaseResponse showUser(string id){...} public BaseResponse deleteUser(string id){...}}
其实,在这个类里,也包含了三个信息:
- 资源,就是类,比如UserController,PaymentController等
- 操作,就是方法,比如 showUser , deleteUser等
- 实例,就是参数,比如 id等
如此看来,其实还是有渊源的。。。
那么今天,我们又如何定义权限呢?Shiro帮我们做了很好的抽象。
资源:操作:实例
所以说,真的是很有渊源的。
if ( SecurityUtils.getSubject().isPermitted("printer:query:lp7200") { // Return the current jobs on printer lp7200}
0 0
- 关于权限控制的讨论
- 关于权限控制的讨论
- 关于权限控制的讨论
- ITeye论坛关于权限控制的讨论
- 关于权限控制的讨论:操作与数据
- 类的访问控制权限讨论
- 关于ffmpeg中的VBR控制的讨论
- 关于svn权限的控制
- 关于目录文件所需权限的讨论
- 关于ffmpeg中的VBR控制的讨论(编码时参数设置)
- 关于用户-角色-权限控制的疑问
- 关于java访问权限控制的误区
- 关于svn权限控制的配置
- 关于Java权限控制SecurityManager的理解
- 关于权限控制的讨论集
- 关于页面权限控制
- 关于权限控制
- 关于BigInteger控制权限
- spring 的面试题
- hibernate多对多之中间表有多个字段
- 一次皆大欢喜的加薪
- CDH5.1使用CDH Manager安装
- Android根据布局文件生成activity类
- 关于权限控制的讨论
- private, public, protected 访问标号的访问范围之JAVA篇
- (二十一)某些定义(也是考题):
- 发布项目,Upload AppStore解决ITMS-90096问题
- SparkSQL样例
- ios面试题(2)
- nodeJs+jquery实现聊天插入表情功能
- leetcode 283 Move Zeroes C++
- 【转载】开源库