当前位置:首页 > 经验 >

素拓的工作原理(素拓介绍图文)

来源:原点资讯(www.yd166.com)时间:2022-11-06 17:06:39作者:YD166手机阅读>>

今天来聊聊权限系统的设计以及主流的五种权限模型。

权限管控可以通俗地理解为权力限制,即不同的人由于拥有不同权力,他所看到的、能使用的可能不一样。对应到一个应用系统,其实就是一个用户可能拥有不同的数据权限(看到的)和操作权限(使用的)。

主流的权限模型主要分为以下五种:

  • ACL模型:访问控制列表
  • DAC模型:自主访问控制
  • MAC模型:强制访问控制
  • ABAC模型:基于属性的访问控制
  • RBAC模型:基于角色的权限访问控制
ACL模型:访问控制列表

Access Control List,ACL是最早的、最基本的一种访问控制机制,是基于客体进行控制的模型,在其他模型中也有ACL的身影。为了解决相同权限的用户挨个配置的问题,后来也采用了用户组的方式。

原理:每一个客体都有一个列表,列表中记录的是哪些主体可以对这个客体做哪些行为,非常简单。

例如:当用户A要对一篇文章进行编辑时,ACL会先检查一下文章编辑功能的控制列表中有没有用户A,有就可以编辑,无则不能编辑。再例如:不同等级的会员在产品中可使用的功能范围不同。

缺点:当主体的数量较多时,配置和维护工作就会成本大、易出错。

DAC模型:自主访问控制

Discretionary Access Control,DAC是ACL的一种拓展。

原理:在ACL模型的基础上,允许主体可以将自己拥有的权限自主地授予其他主体,所以权限可以任意传递。

例如:常见于文件系统,LINUX,UNIX、WindowsNT版本的操作系统都提供DAC的支持。

缺点:对权限控制比较分散,例如无法简单地将一组文件设置统一的权限开放给指定的一群用户。主体的权限太大,无意间就可能泄露信息。

MAC模型:强制访问控制

Mandatory Access Control,MAC模型中主要的是双向验证机制。常见于机密机构或者其他等级观念强烈的行业,如军用和市政安全领域的软件。

原理:主体有一个权限标识,客体也有一个权限标识,而主体能否对该客体进行操作取决于双方的权限标识的关系。

例如:将军分为上将>中将>少将,军事文件保密等级分为绝密>机密>秘密,规定不同军衔仅能访问不同保密等级的文件,如少将只能访问秘密文件;当某一账号访问某一文件时,系统会验证账号的军衔,也验证文件的保密等级,当军衔和保密等级相对应时才可以访问。

缺点:控制太严格,实现工作量大,缺乏灵活性。

ABAC模型:基于属性的访问控制

Attribute-Based Access Control,能很好地解决RBAC的缺点,在新增资源时容易维护。

原理:通过动态计算一个或一组属性是否满足某种机制来授权,是一种很灵活的权限模型,可以按需实现不同颗粒度的权限控制。

属性通常有四类:

  1. 主体属性,如用户年龄、性别等;
  2. 客体属性,如一篇文章等;
  3. 环境属性,即空间限制、时间限制、频度限制;
  4. 操作属性,即行为类型,如读写、只读等。

例如:早上9:00,11:00期间A、B两个部门一起以考生的身份考试,下午14:00,17:00期间A、B两个部门相互阅卷。

缺点:规则复杂,不易看出主体与客体之间的关系,实现非常难,现在应用得很少。

RBAC,基于角色的权限访问控制

Role-Based Access Control,核心在于用户只和角色关联,而角色代表对了权限,是一系列权限的集合。

RBAC三要素:

  1. 用户:系统中所有的账户
  2. 角色:一系列权限的集合(如:管理员,开发者,审计管理员等)
  3. 权限:菜单,按钮,数据的增删改查等详细权限。

RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。

角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。

角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。角色与角色的关系同样也存在继承关系防止越权。

优点:便于角色划分,更灵活的授权管理;最小颗粒度授权;

素拓的工作原理,素拓介绍图文(1)

RBAC的深度拓展

RBAC模型可以分为:RBAC0RBAC1RBAC2RBAC3 四个阶段,一般公司使用RBAC0的模型就可以。另外,RBAC0相当于底层逻辑,后三者都是在RBAC0模型上的拔高。

我先简单介绍下这四个RBAC模型:

1. RBAC0模型

用户和角色、角色和权限多对多关系。

简单来说就是一个用户拥有多个角色,一个角色可以被多个用户拥有,这是用户和角色的多对多关系;同样的,角色和权限也是如此。

RBAC0模型如下图:没有画太多线,但是已经能够看出多对多关系。

素拓的工作原理,素拓介绍图文(2)

2. RBAC1模型

相对于RBAC0模型,增加了角色分级的逻辑,类似于树形结构,下一节点继承上一节点的所有权限,如role1根节点下有role1.1role1.2两个子节点

素拓的工作原理,素拓介绍图文(3)

角色分级的逻辑可以有效的规范角色创建(主要得益于权限继承逻辑),我之前做过BD工具(类CRM),BD之间就有分级(经理、主管、专员),如果采用RBAC0模型做权限系统,我可能需要为经理、主管、专员分别创建一个角色(角色之间权限无继承性),极有可能出现一个问题,由于权限配置错误,主管拥有经理都没有权限。

而RBAC1模型就很好解决了这个问题,创建完经理角色并配置好权限后,主管角色的权限继承经理角色的权限,并且支持针对性删减主管权限。

3. RBAC2模型

基于RBAC0模型,对角色增加了更多约束条件。

素拓的工作原理,素拓介绍图文(4)

首页 123下一页

栏目热文

素拓图片大全(素拓的总结)

素拓图片大全(素拓的总结)

随着时代的发展,拓展训练逐渐形成了以各种体育项目为基础,整合各种资源和手段的综合训练方案。形式越来越多样化,内容也越来越...

2022-11-06 17:12:38查看全文 >>

素拓的起源和原理(素拓是啥)

素拓的起源和原理(素拓是啥)

拓展训练经历了20世纪40年代的创始,50年代的扩大规模、60年代的长足发展、70年代的稳固和80年代的国际化之后,走...

2022-11-06 17:25:48查看全文 >>

大学素拓部是干什么的(大学为什么加入素拓部)

大学素拓部是干什么的(大学为什么加入素拓部)

各团总支、学生会、学生社团:校学生会、学生社团等组织作为校园文化建设的组织者、参与者和校园文化生活的重要载体,对广大学生...

2022-11-06 17:15:41查看全文 >>

素拓部是干嘛的(大学为什么加入素拓部)

素拓部是干嘛的(大学为什么加入素拓部)

各位书友们,大家好,我是鲨鱼!今天给大家带来几本豪门总裁小说,如果你也喜欢这类型的小说,还请多多点赞留言呀,每本都是高分...

2022-11-06 17:06:08查看全文 >>

素拓总结简短(素拓报告怎么写)

素拓总结简短(素拓报告怎么写)

【活动回顾】2014年暑期宝宝团队---“隋唐植物园的拓展训练”总结篇开心师竹居 2014-08-312014年7月8日...

2022-11-06 16:50:04查看全文 >>

素拓有什么用途(药拓的六大效果)

素拓有什么用途(药拓的六大效果)

作业少了,辅导班停了,课后活动丰富了……今年9月,“双减”为全国中小学生送上了一份特别的开学礼。“双减”政策落地实施一个...

2022-11-06 16:57:50查看全文 >>

素拓分有哪些用途(素拓分很重要吗有什么用)

素拓分有哪些用途(素拓分很重要吗有什么用)

老师寄语服务队所有的同学们:志愿者,是我们共同的名字,感谢你们的付出。你们把爱心化作行动,关爱每个需要帮助的人。这是一个...

2022-11-06 16:55:02查看全文 >>

素拓分是什么(素拓分是自己申请吗)

素拓分是什么(素拓分是自己申请吗)

现在的大学生活越来越精彩,学校里有各种各样的社团、协会,让人眼花缭乱,很多大一新生刚进入学校后,总会被这些花里胡哨的东西...

2022-11-06 17:19:10查看全文 >>

素拓部成员是干嘛的(对素拓部的认识)

素拓部成员是干嘛的(对素拓部的认识)

据工信部网站10月31日消息,工业和信息化部发布关于推进民爆行业高质量发展的意见。工业和信息化部关于推进民爆行业高质量发...

2022-11-06 16:56:19查看全文 >>

素拓到底是什么样子(素拓的目的是什么)

素拓到底是什么样子(素拓的目的是什么)

关于装修翻车方面的专辑,前面都有,大家可以翻阅查看,更多装修错误可以查看翻车专题《装修翻车错误专题》今天列举一下鞋柜定制...

2022-11-06 17:20:14查看全文 >>

文档排行