基于角色的访问控制RBAC资料_第1页
基于角色的访问控制RBAC资料_第2页
基于角色的访问控制RBAC资料_第3页
基于角色的访问控制RBAC资料_第4页
基于角色的访问控制RBAC资料_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、今天在学习RBAC的时候在网上查了资料,想保存地址,但是担心将来地址打不开,所以复制过来了吧。 如果有侵权的话,如果有你的信,我会在第一时间删除RBAC初学笔记本什么是RBAC?RBAC是基于角色的访问控制,是基于角色的访问控制。 角色访问控制(RBAC )导入了Role的概念。 符合企业用户、组织、数据和应用程序的特征,以隔离用户(即,操作主体)和权限(Resource,即操作资源)。RBAC的关注点是Role与user,Role与权限的关系,也就是用户分配与权限分配的关系。RBAC具有以下优点1 .降低许可证管理的复杂性,降低管理开销2、灵活支持企业安全战略,对企业变化有很大伸缩性解决复杂

2、权限管理问题的过程可以抽象地概括为确定“Who能否对What进行How访问操作(Operator )”的逻辑表达式值是否为True的求解过程。RBAC的几个重要概念:l Who :权限的所有者或主体。 典型地是主用户、组、角色、活动者等。 与权限相关的实体只有角色和用户。 例如,业务经理(Role )、张三(User )。Role :作为“用户”(User )和“权限”(Privilege )的代理层,您必须了解权限和用户之间的关系,并且所有权限都必须授予Role,而不是用户或组。 基于角色的访问控制方法的思想是将对用户的权限分为两种,将角色用于用户的行驶权限的中介。 角色是一组访问权限的集合

3、,用户可以成为多个角色的成员,一个角色具有多个权限,也可以为多个角色重复配置一个权限。用户:用户是可以独立访问计算机系统数据和数据所表示的其他资源的主体,用户的集合用用户来表示。 用户一般是指人。组:是一组相关用户的集合。 用户是从组继承的,并且具有该组的角色权限。个人来说,role被认为是抽象化的用户或组。l What :要权限的资源(Resource ),包括资源类和资源实例(the instance of Resource )。 例如,报告。粗粒度:表示不考虑对象的特定实例,只考虑对象的类的类级别。 例如,在用户管理中,创建/删除对于所有用户是平等的,并且不区分操作的具体对象实例。粒度:

4、表示必须考虑实例级别,即特定对象的实例(the instance of object )。 当然,细度是先考虑粗粒度的对象类别,再考虑特定的实例。 例如,在合同管理中,列表和删除需要区分合同实例是否是由当前用户创建的。how :以action的形式表示一种访问方法(另请参见Operator条目)。 例如,删除。操作者:操作。 表示适用于What的How动作。 在Resource Related的概念中,单独的How操作没有实际意义。 仅当与特定资源组合时(例如删除报告)才有意义。下图显示了用户、组、role和how之间的关系权限系统的核心由以下三部分组成:1 .建立权限2 .分配权限3 .使用

5、权限系统各部分的主要参与者比较如下:1 .创造权限- Programer创造2 .权限分配-管理员分配3 .使用权限用户1 .程序员为特权系统提供operator=权限资源2 .管理员利用名为Operator的基本要素建立他的理想权限模型。例如,创建角色、创建用户组、将用户分配给用户组、将用户组与角色关联 .所有这些操作都由管理员执行。3 .用户使用管理员分配的权限,并使用每个系统。程序员只回答问题,哪些权限可以访问哪些资源,即回答上述的操作员。 程序员提供操作员,意味着系统穿着铠甲.的意思。 管理员可以根据自己的意志,建立自己想要的权限框架。 操作员是该系统最重要的部分,它是纽带,是程序管理

6、员、管理员和用户之间的纽带。 (转发源: http:/www.1to2.us/RBAC-a.htm )RBAC模型初探访问控制背景访问控制技术是从美国国防部(DoD )资助的研究和开发成果演化而来的。 该研究产生了两种基本类型的访问控制:自主访问控制(DAC )和强制访问控制(MAC )。 最初的研究和应用主要是为了防止机密信息被非法者访问,最近的应用主要是将这些策略应用于商业领域。自主访问控制允许个人用户来判断访问控制权限的授予和取消。 授予没有访问权限的个人用户许可和废除。 自主的访问控制机制使用户能够访问取消对处于该控制下的对象的访问。 也就是说,用户是其控制下的对象的所有者。 但是,在

7、很多组织中,最终用户没有访问的信息。 对于这些组织,公司和代理是事实上的系统对象及其进程的所有者。 访问优先级由组织控制,通常基于员工的功能而不是数据所有权。强制访问控制在美国国防部的trustedcomputersecurityevaluationcriteria (tcsec )中定义。 “限制对对象的访问的手段基于包含在这些对象中的信息的机密性和访问这些机密性信息的主体的正式许可信息(清除等)。上述访问控制策略不是秘密的,但并不特别适合处理敏感信息的政府和行业组织的需要。 在这种环境下,安全目标支持高端组织战略,该战略源自现有法律、道德规范、规则或一般惯例。 在这些环境中,不仅需要根据信

8、息的机密性来标记并访问信息的个人能力,还需要控制个人行为的能力。什么是基于角色的访问控制(role-BAC )? NIST定义如下。访问是利用计算机资源做某事的能力,访问控制是在某种状况下被许可或限制的手段(通常是基于物理和系统的控制)。 基于计算机的访问控制不仅可以规定“谁”或有权使用特定系统资源,还可以规定被允许的访问的类型。 这些控制方法可以用计算机系统或外部设备来实现。在基于角色的访问控制中,访问决策是基于角色的,个人用户是组织的一部分。 用户具有分配的角色(医生、护士、出纳、经理等)。 定义角色的过程应该基于对组织运营的彻底分析,包括来自组织内更广泛用户的输入。权限按角色名称分组,资

9、源的使用仅限于假设相关角色的个人。 例如,在医院系统中,医生的角色可以包括诊断、处方、实验室检查的指示等,研究员的角色仅限于为研究收集匿名临床信息的工作。控制访问角色的运用,可能是开发和加强企业特殊的安全战略,是流程化安全管理流程的有效手段。用户(用户)和角色(Role )用户指访问系统内的资源的主体,一般是人,也是代理等代理。 角色是指在应用领域中的权力和责任的意义整合体,即使是抽象的概念,也可以对应于实际系统中的特定意义体,例如组织内的职务等。 根据角色属性的不同,某些模型可能会将角色细分为普通角色和管理员角色(可以理解为全局角色)。“权限”(Permissions )和“权限”(Perm

10、ission )许可证描述了角色对计算机资源的访问和操作权限,并反映了许可证的结果。 例如,如果向某个角色授予对计算机资源的读取权限,则表示该角色已经获得了对计算机资源的读取权限,这表示存在许可证。 对于操作,描述了许可和操作之间的关系,该关系表示角色对某个操作的权限和权限状态。角色和分配分配有两个方面:用户分配和许可证分配。 用户分配意味着将用户分配给特定的角色. 许可证的分配表示将计算机资源分配给角色的访问和操作许可证.会话(session )会话表示用户和角色之间的关系。 用户必须建立会话并激活角色,并获得适当的访问权限。角色和角色层次(Role Hierarchies )角色本身只是名

11、词,本身并不代表权限的大小。 例如,可以决定“管理员”的角色,也可以决定“项目层”的角色。 现实中,从这两个角色可以看出,DIR的权限比PL的权限级别高。 但是,对计算机来说,这两个角色只有两个“语言”,是一样的。 要解决这些问题,请使用分级角色对角色进行分层。 可以使用表示角色组概念的复合角色来对角色进行分组和复合,以方便权限分配。 某些PS产品经常发生等级角色。约束(Constraints )模型中的角色分离关系是用来控制冲突的。 静态角色分离(Static SD )用于指定角色的互斥关系,并由用户分配阶段。 避免同一用户具有排他的角色。 实现简单,角色互斥的意义关系清楚,管理不容易,不能

12、处理一些实际情况。 动态角色隔离(Dynamic SD )指定角色的互斥关系,并在角色激活阶段使用。 相同的用户可以具有互斥角色,但不允许该用户同时激活互斥角色。A。 更灵活,直接对话,适应实际管理需要,复杂,难以管理。利用AOP实现. NET上完全基于角色的访问控制(RBAC )模型作者:管理员日:2006-11-301 .背景1.NET平台没有完整的RBAC机制, NET安全模型(代码访问安全性: CAS )只能实现到Role级别,没有细分到Task级别,ASP.NET 2.0的许多安全性利用Web.Config的安全构成等只能设定为Role的这些安全机制的人,在很多情况下,程序/代码需要

13、硬代码(HardCode )的作用,无法实现在执行时定制角色的功能2. Windows 2000/2003附带的Authorization Manager提供了更完整的RBAC模型,但通常仅适用于Windows用户,权限检查(调用AccessCheck方法)也是手动的3 .权限检查是一种通用操作,最好的实现方法是面向方面编程(AOP )二、相关主题的介绍1. RBAC模型的元素:用户、角色、任务(或操作) (User、Role、Task )这三个实体的稳定性逐渐增强,两个关系,User-Role、Role-Task,其中:o User是在日常管理执行时创建的o Role是建立部署/配送o Ta

14、sk是在开发时决定的o User-Role是在日常管理执行时创建的o Role-Task是在部署/配送时创建的Task一般是固定的,与应用程序紧密相连,所以硬编码也没关系3. User/Role部分可以比较容易地实现,如在ASP.NET 2.0中实现Membership等三、具体实现注:本文中实现AOP的想法主要来源于以下文章: -AOP Inc # (http:/www.developer fusion.co.uk/show/5307/3 这是在. NET上实现AOP的最简单、最方便的方法,不能在原理上进行介绍,还提供了Visual Studio 2005的Sample Project。 其中有安全检查和日志记录的AOP功能。 AOP的优点是,实现AOP的同时,不需要建立接口(这是很多人的做法),对原来的类别进行微小的变更,可以实现完整的AOP功能。1 .定义描述“任务”的Attributeusing System;namespace business logic.security. -/*/定义系统上的操作/ attribute usage (attribute targets.all,AllowMultiple=false,I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论