2015年传智播客JavaEE 第168期就业班视频教程06-权限校验子系统介绍

时间:2022-02-02 15:34:17

没整过论坛你也整过淘宝,其实淘宝登录的也分商家和个人,卖家和买家,不同的人登录显示的东西是不一样的。权限系统要分两大过程,第四天上午下午分开,分为授权与校验。我把某一个职务给你叫做授权,例如封你为征西大将军。校验是你去调兵了拿到虎符,我得看你有没有虎符。校验是基于干某一件事情,是干某一件事情才需要校验。

总经理、财务总监、项目经理那些是职务,一定要把角色和职务区分开。先不考虑角色,先说职务。一般人只有一个职务,习大大那些军委主席、国家主席多个职务的人毕竟还是少数,大部分人都是一个职务。我们不考虑多个职务那事。职务就是个字符串,铁道部部长和铁道总公司总经理那不是一样的吗?其实是一样的,职务只不过是个名称。

老师以前在工信部上班,门口就是持枪的警卫,他就认门条。拿工作证也不好使,就认门条。在做一件事情的时候他检测的东西完全取决于你这个人的角色。你只要有普通员工的角色就可以进去,你能说普通员工是你的职务吗?不能。一个人有多个角色。联想楼上面是有餐厅的,它的负一楼是餐厅。一个人有多个角色,这个角色可能分的很细。一个人能不能干这事取决于他的这个角色能不能干这事。美国总统就能发射核弹,他也需要授权的。能发射核弹不是因为奥巴马这个人,奥巴马是总统,克林顿也是当过总统的,你不能说克林顿也可以发射核弹。角色和职务完全没有任何关系,一个人可能有一百个角色。角色决定了做什么事情。

例如这个门是个实体吧,某些人可以开门关门,某些人可以打扫这个门,某些人还可以把这个门卸载的。能够做某件事情是指对这个东西进行操作还是指对这个东西进行一种特殊的操作?是对这个东西进行全操作还是指对这个东西进行特殊的操作?特殊的操作。一个实体可以对很多件事情,开门关门打扫门修门卸门。所以我们管控的事情是门呢还是门对应的事呢?所以这里一定要区分开实体和对实体可以操作的能力,这是两个概念。权限校验校验的不是实体而是对实体的操作能力。也就是说开门关门是两件事情了,在系统里面我们不管这些事情叫做实体,我们管它们叫做资源。资源指的是对某种实体的某种操作能力叫做资源。这个实体上可能会发生30件事情,但是你可能只能干一件事情。有些人说那我这个角色就绑定这个菜单,我这个角色就绑定这台机器,不是,这台机器可能可以干很多事情,但是你只是使用这台机器而不是说卸载这台机器或者说清洗这台机器。有可能这些东西是分不同的人。一个人能干什么事情是这个人对应的角色他能不能干这个事情。一个人能干这件事不是取决于这个人能干这件事情而是这个人具有的角色能干这件事情。你只要有这个角色你就能干。角色和资源之间的关系是多对多,一个角色可以干多件事情,一件事情可以被很多个角色所干,一个人可以具有多个角色。

一件事情可能角色A和角色B都能干,不是角色A和角色B都能干才能干,他只要有一个角色能干就行。每一个角色对应一个资源列表,我们把所有的资源列表合在一起最后我只要看整体的资源列表里面有没有这件事情就行了。

角色指的不是具体的人也不是具体的职务,它就是一模拟的名称可能叫A可能叫B,资源指的是对某件事情的操作能力。