版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、RBAC权限控制模型简介i为什么要进行权限控制如果没有权限控制,系统的功能完全不设防,全部暴露在所有用户面前。用户登录后可以使用系统中的所有功能。这在实际运行中是不能接收的。所以权限控制系统的目标就是管理用户的行为,保护系统的功能2、什么是权限控制权限控制就是对权限进行限制权限=权力+限制3如何进行权限控制定义资源资源就是系统中需要保护起来的功能。具体形式很多:URL地址、handler方法、service方法、页面元素等等,都可以定义为资源使用权限控制系统保护起来创建权限个功能负载的项目会包含很多具体资源,成千上万都有可能。这么多资源逐个进行操作太麻烦了。为了简化操作,都可以将相关的几个资源
2、封装到一起,打包成一个“权限”同时分配给有需要的人创建角色对于一个庞大系统来说,一方面需要保护的资源非常多,另一方面操作系统的人也非常多。把资源打包为权限是对操作的简化,同样把用户划分为不同角色也是对操作的简化。否则直接针对一个个用户进行管理就会很繁琐。所以角色就是用户的分组、分类。先给角色分配权限,然后再把角色分配给用户,用户以这个角色的身份操作系统就享有角色对应的权限了。管理用户系统中的用户其实是人操作系统时用来登录系统的账号、密码。建立关联关系权限T资源:单向多对多Java类之间单向:从权限实体类可以获取到资源对象的集合,但是通过资源获取不到权限数据库表之间多对多:一个权限可以包含多个资
3、源一个资源可以被分配给多个不同权限*角色-权限*:单向多对多Java类之间单向:从角色实体类可以获取到权限对象的集合,但是通过权限获取不到角色数据库表之间多对多:一个角色可以包含多个权限一个权限可以被分配给多个不同角色用户-角色:双向多对多Java类之间双向:可以通过用户获取它具备的角色,也可以看一个角色下包含哪些用户数据库表之间:一个角色可以包含多个用户一个用户可以身兼数职多对多关联关系在数据库中的表示没有中间表的情况t_subjectt_studentidnamefkidname1javase2,3二11si2javanreb1,2,32s23jdbc1,2,33s3如果只能在一个外键列上
4、存储关联关系数据,那么现在这个情况无法使用SQL语句进行关联查询有中间表t_subjectnameididnamesubjecstudent_id当有中间表的时候我们可以使用slq语句将两个表关联起来selectt_studet.id,t_fromt_studentleftjoint_inneront_studen.id=t_inner.stuent_idleftjoint_subjectont_inner.subject_id=t_subject.idwheret_subjct.id=1中间表主键的生成方式方式:另设置字段作为主键我们上面的例子就是另设置字段作为主键t
5、innuTidsubject_idstudent_id1122方式2:使用联合主键t_innersubject_idstudent_id主键值-111?121?3_212,1222,2只要保证联合主键一对值不和其他值重负即可RBAC权限模型概念鉴于权限控制的核心是用户通过角色与权限进行关联,所以前面描述的权限控制系统可以提炼为一个模型:RBAC(Role-BasedAccessControl,基于角色的访问控制)。在RBAC模型中,一个用户可以对应多个角色,一个角色拥有多个权限,权限具体定义用户可以做哪些事情。RBAC0RBAC3RBAC0最基本的RBAC模型,RBAC模型的核心部分,后面三种
6、升级版RBAC模型也都是建立在RBAC0的基础上。RBAC1在RBAC0的基础上增加了角色之间的继承关系。角色A继承角色B之后将具备B的权限再增加自己独有的其他权限。比如:付费会员角色继承普通会员角色,那么付费会员除了普通会员的权限外还具备浏览付费内容的权限。RBAC2RBACORBAC1RBAC2在RBACO的基础上进一步增加了角色责任分离关系。责任分离关系包含静态责任分离和动态责任分离两部分。静态责任分离:给用户分配角色时生效互斥角色:权限上相互制约的两个或多个角色就是互斥角色。用户只能被分配到一组互斥角色中的一个角色。例如:一个用户不能既有会计师角色又有审计师角色。°基数约束:
7、冈一个角色对应的访问权限数量应该是受限的冈一个角色中用户的数量应该是受限的冈一个用户拥有的角色数量应该是受限的”先决条件角色:用户想拥有A角色就必须先拥有B角色,从而保证用户拥有X权限的前提是拥有Y权限。例如:“金牌会员”角色只能授予拥有“银牌会员”角色的用户,不能直接授予普通用户。动态责任分离:用户登录系统时生效个用户身兼数职,在特定场景下激活特定角色例如:冈马云在阿里巴巴内部激活创始人角色冈马云在某企业级论坛上激活演讲嘉宾角色RBAC3RBAC3是在RBACO的基础上同时添加RBAC2和RBAC3的约束,最全面、最复杂。基本RBAC模型扩展口RBA模型血而元喬F5卫Fjm用.户表FKJiP
8、JlEFMLEERiTIOSTRPREFJKIVILEGEFKPZREFEEEMEMTFKGREEFSKOUT氏両丘盍IDHUHUE£英曲元秦歸肖mciwoo)拦swnsF绅朝零%疇拠立件ID溯1£EE文件若VAECIWU(5文命牆径VAECKWiS(S抿卡Bibrumbee<fi2>期单TDWlfMBPE<fl(1>碾阴文件关联表取卩|IDfTJMEilR<flcl>文件IDtTUfflBEA<£12>T_TJ5ERFK_GU_KEF_5R0UF京件憑用尸粗甫色并联表用F组HiUVNEER<fk!>角色
9、IDKTUHBER<£k2>MS_FFtF_fTLF黑单表寒率DWWEER*菲单名称VAfMASSCMJ幫甲fRLVAfJCHW(SOJ火集单ElUWBER甩户垂IIIJON迎K5甬戸底宮称VARCMAR2t5Q)攻用户诅茗称|TUMB£R功爵操化表用尸弟色关聆衷角色机限关"表梶限幽E幷鎂表用户IDNUnSEK<fk!>ft&IDHUftUER<fk2>箱邑IDITJMBBS<fkl>换限IDHUMBEROTQ杪限IOJBEH<£kl>按柱IDNlffiBEA<fK>知恥ER*WHAJ42C5l).VARJCHM12(50:VAftEH吃21.沁;KlfflEERFK_UE_J£F_EOLE/KiimEK分k?VAECHAJISOQ尿史卫IBIIIBEHtIt用戶君mE2(3O7'掷艮頁面元隶买联表捌驗口JHMBFEi<fk2?JI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 史瑞芬护理护理健康教育技巧
- 营运岗位笔试题及答案
- 2026年如何拍好幼儿园六一节目
- 2026年幼儿园中班有关国庆节
- 2026年幼儿园期末教师总结制作
- 2026年关于昆虫的幼儿园教案
- 2026年幼儿园教教学课件参赛
- 2026年中班生命之源水幼儿园
- 2026年幼儿园关于沟通的分享
- 创意产品设计质量承诺书5篇
- DB32/T 4391-2022食用农产品集中交易市场快速检测室建设与管理规范
- 北京师大附中2025届七年级数学第二学期期末学业水平测试模拟试题含解析
- 耳鼻喉科学第二十三章耳部疾病讲解
- 2024年山东济南初中学业水平考试生物试卷真题(含答案解析)
- AI音乐概论知到智慧树期末考试答案题库2024年秋四川音乐学院
- 吊车组立铁塔施工组织方案
- 坟墓拆除协议书范本(2024版)
- 生物信息大数据智慧树知到期末考试答案章节答案2024年温州医科大学
- 食品生产加工领域监管工作培训
- 农村环保培训课件讲解
- 边缘型人格障碍生存指南如何与边缘型人格障碍相处
评论
0/150
提交评论