2015年传智播客JavaEE 第168期就业班视频教程06-权限校验子系统介绍
没整过论坛你也整过淘宝,其实淘宝登录的也分商家和个人,卖家和买家,不同的人登录显示的东西是不一样的。权限系统要分两大过程,第四天上午下午分开,分为授权与校验。我把某一个职务给你叫做授权,例如封你为征西大将军。校验是你去调兵了拿到虎符,我得看你有没有虎符。校验是基于干某一件事情,是干某一件事情才需要校验。
总经理、财务总监、项目经理那些是职务,一定要把角色和职务区分开。先不考虑角色,先说职务。一般人只有一个职务,习大大那些军委主席、国家主席多个职务的人毕竟还是少数,大部分人都是一个职务。我们不考虑多个职务那事。职务就是个字符串,铁道部部长和铁道总公司总经理那不是一样的吗?其实是一样的,职务只不过是个名称。
老师以前在工信部上班,门口就是持枪的警卫,他就认门条。拿工作证也不好使,就认门条。在做一件事情的时候他检测的东西完全取决于你这个人的角色。你只要有普通员工的角色就可以进去,你能说普通员工是你的职务吗?不能。一个人有多个角色。联想楼上面是有餐厅的,它的负一楼是餐厅。一个人有多个角色,这个角色可能分的很细。一个人能不能干这事取决于他的这个角色能不能干这事。美国总统就能发射核弹,他也需要授权的。能发射核弹不是因为奥巴马这个人,奥巴马是总统,克林顿也是当过总统的,你不能说克林顿也可以发射核弹。角色和职务完全没有任何关系,一个人可能有一百个角色。角色决定了做什么事情。
例如这个门是个实体吧,某些人可以开门关门,某些人可以打扫这个门,某些人还可以把这个门卸载的。能够做某件事情是指对这个东西进行操作还是指对这个东西进行一种特殊的操作?是对这个东西进行全操作还是指对这个东西进行特殊的操作?特殊的操作。一个实体可以对很多件事情,开门关门打扫门修门卸门。所以我们管控的事情是门呢还是门对应的事呢?所以这里一定要区分开实体和对实体可以操作的能力,这是两个概念。权限校验校验的不是实体而是对实体的操作能力。也就是说开门关门是两件事情了,在系统里面我们不管这些事情叫做实体,我们管它们叫做资源。资源指的是对某种实体的某种操作能力叫做资源。这个实体上可能会发生30件事情,但是你可能只能干一件事情。有些人说那我这个角色就绑定这个菜单,我这个角色就绑定这台机器,不是,这台机器可能可以干很多事情,但是你只是使用这台机器而不是说卸载这台机器或者说清洗这台机器。有可能这些东西是分不同的人。一个人能干什么事情是这个人对应的角色他能不能干这个事情。一个人能干这件事不是取决于这个人能干这件事情而是这个人具有的角色能干这件事情。你只要有这个角色你就能干。角色和资源之间的关系是多对多,一个角色可以干多件事情,一件事情可以被很多个角色所干,一个人可以具有多个角色。
一件事情可能角色A和角色B都能干,不是角色A和角色B都能干才能干,他只要有一个角色能干就行。每一个角色对应一个资源列表,我们把所有的资源列表合在一起最后我只要看整体的资源列表里面有没有这件事情就行了。
角色指的不是具体的人也不是具体的职务,它就是一模拟的名称可能叫A可能叫B,资源指的是对某件事情的操作能力。
2015年传智播客JavaEE 第168期就业班视频教程06-权限校验子系统介绍的更多相关文章
- 2015年传智播客JavaEE 第168期就业班视频教程day45-ERP项目-01 10-类图结构分析设计
运行astah-pro.bat,这是windows下运行的.astah-run.sh是Linux下运行的. 类结构视图的作用是描述类模型和模型与模型之间的关系,也就是说我们在这要把这个一对多和多对多的 ...
- 2015年传智播客JavaEE 第168期就业班视频教程14-登录功能需求分析+模块结构命名规范
得先造一个模块,来封装我们的员工模型.登录的就是我们的员工嘛.员工模块属于权限校验系列的,校验叫做auth.进销存模块叫做cn.itcast.erp.invoice.权限模块叫做cn.itcast.e ...
- 2015年传智播客JavaEE 第168期就业班视频教程11-导入配置文件
资源文件放在Source Folder目录下面,这个目录同样会编译到classes目录下 web.xml的 <listener> <listener-class>org.spr ...
- 2015年传智播客JavaEE 第168期就业班视频教程day45-ERP项目-0107-其他子系统
一套ERP系统中一定会有CRM,不可能说我所有数据都是散着放的,你想用就随便写一个.你出去和人聊,一定得说我这里有什么有什么,然后你就可以和人说你做的是进销存.人家要问CRM或者说财务系统你就说那不是 ...
- 2015年传智播客JavaEE 第168期就业班视频教程day45-ERP项目-01 05-主线流程
采购管理 销售管理 采购退货管理 销售退货管理 老师的采购单的审核是分三级审核的,如果这个单子是个普通单子,那么审核一下就完了,如果这个单子超过100万,需要二级领导审核,如果这个单子超过500万, ...
- 2015年传智播客JavaEE 第168期就业班视频教程day38-SSH综合案例-1
为什么需要划分模块呢?因为需要知道一些大致的功能,其次呢需要知道我们后台需不需要对它进行维护.如果需要呢那它肯定是一个单独的模块, 1.1 网上商城需求分析: 1.1.1 前台:用户模块 注册: ...
- 2015年传智播客JavaEE 第168期就业班视频教程03-ERP简介(2)
资源管理这块的东西大家基本上能够猜个差不多了.下面描述描述计划.计划这个东西把企业资源这个东西提升了不只十倍二十倍了.ERP的核心是计划,但是这次我们做是不做计划的.今年我们是一个生产型企业,我们要开 ...
- 2015年传智播客JavaEE 第168期就业班视频教程 02-ERP简介
其实ERP描述的是管理一个企业的整体的所有的资源.ERP是帮你管整个企业的运行.那它是管哪一类企业呢?比如说帮光线传媒.ERP更多是用在生产制造企业,这是最好的,其次的就是这种销售型企业,二道贩子那种 ...
- 2015年传智播客JavaEE 第168期就业班视频教程17-登录功能业务逻辑实现(代码)
点击红色在业务层接口EmpEbi创建方法login 按F4弹出类继承层次视图 这些快捷键是条件反射了. 业务层做MD5数据加密,不能放在表现层也不能放在数据层必须放在业务层.它属于业务操作. 数据层的 ...
随机推荐
- <NET CLR via c# 第4版>笔记 第9章 参数
9.1 可选参数和命名参数 class Program { private static int s_n = 0; private static void M(int x = 9, string s ...
- Type Script在Visual Studio 2013中的问题汇总(持续更新…)
TypeScript在vs2012下的问题 TypeScript对VS2012支持度比较低,建议升级为VS2013版本以上. 在VS2013中无法创建TypeScript项目 VS2013默认不支持T ...
- js:关闭当前页面
var userAgent = navigator.userAgent; if (userAgent.indexOf("Firefox") != -1 || userAgent.i ...
- I.MX6 PWM buzzer driver hacking with Demo test
/***************************************************************************** * I.MX6 PWM buzzer dr ...
- C# 图片生成缩略图
C# 图片生成缩略图方法: /// <summary> /// 生成缩略图 /// </summary> /// <param name="fileName&q ...
- Linux的系统suspend和resume
参考: www.wowotech.net/linux_kenrel/suspend_and_resume.htmlwww.wowotech.net/linux_kenrel/pm_interface. ...
- 性能测试-Loadrunner组件Controller一
Loadrunner应用之Controller Loadrunner工具,通常看到的有三大核心组件,VuGen.Controller.Analysis,今天我们继续来聊一下,其中的一个核心组件:Con ...
- nginx rewrite规则实例讲解
一.正则表达式匹配,其中: * ~ 为区分大小写匹配* ~* 为不区分大小写匹配* !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 二.文件及目录匹配,其中:* -f和!-f用来判断是否存在文 ...
- vs2005+WinCE模拟器+ActiveSync调试WinCE程序
来源:http://www.cnblogs.com/xjimmyshcn/archive/2011/07/19/2111087.html 一.WinCE 模拟器通过ActiveSync 6.1(即Wi ...
- CentOS查看显卡及GPU相关信息
lspci | grep -i vga 这样就可以显示机器上的显卡信息,比如 [root@localhost conf]# lspci | grep -i vga01:00.0 VGA compat ...