文档章节

访问控制模型ACL和RBAC

猪刚烈
 猪刚烈
发布于 2014/10/12 11:40
字数 587
阅读 16
收藏 0

1.ACL


  ACL是最早也是最基本的一种访问控制机制,它的原理非常简单:每一项资源,都配有一个列表,这个列表记录的就是哪些用户可以对这项资源执行CRUD中的那些操作。当系统试图访问这项资源时,会首先检查这个列表中是否有关于当前用户的访问权限,从而确定当前用户可否执行相应的操作。总得来说,ACL是一种面向资源的访问控制模型,它的机制是围绕“资源”展开的。

  The relative simplicity of ACLs means they do not need much underlying technological infrastructure to work.由于ACL的简单性,使得它几乎不需要任何基础设施就可以完成访问控制。但同时它的缺点也是很明显的,由于需要维护大量的访问权限列表,ACL在性能上有明显的缺陷。另外,对于拥有大量用户与众多资源的应用,管理访问控制列表本身就变成非常繁重的工作。


2.基于角色的访问控制RBAC


  RBAC是把用户按角色进行归类,通过用户的角色来确定用户能否针对某项资源进行某项操作。RBAC相对于ACL最大的优势就是它简化了用户与权限的管理,通过对用户进行分类,使得角色与权限关联起来,而用户与权限变成了间接关联。RBAC模型使得访问控制,特别是对用户的授权管理变得非常简单和易于维护,因此有广泛的应用。但是它也有自身的缺点,那就是由于权限是以角色为载体分配的,如果某一角色下的个别用户需要进行特别的权限定制,如同加入一些其他角色的小部分权限或去除当前角色的一些权限时,RBAC就无能为力了,因为RBAC对权限的分配是角色为单位的。

  除两上述两种主要的模型之外,还有包括:基于属性的访问控制ABAC和基于策略的访问控制PBAC等等,因为应用不是很广泛,就不做介绍了。

本文转载自:http://blog.csdn.net/bluishglc/article/details/6577778

共有 人打赏支持
猪刚烈
粉丝 22
博文 708
码字总数 110
作品 1
海淀
程序员
针对访问控制列表ACL 与 基于角色的访问控制RBAC进行简单介绍

访问控制列表(Access Control List,ACL)   ACL是最早也是最基本的一种访问控制机制,它的原理非常简单:每一项资源,都配有一个列表,这个列表记录的就是哪些用户可以对这项资源执行CRU...

cloud-coder
2016/06/09
89
0
项目中的权限设计问题

现在我要做一个管理系统,现在在设计权限分配问题上遇到了些问题。 我现在的要求是,用户带有上下级关系(例如用户为厂长>部长>职员),上级用户建立的某些内容,下级用户无法修改、删除,甚...

天天-_-
2015/04/03
365
3
Spring security 3 非常全的文档 API 中文版

Spring Security 安全权限管理手册 序言 I. 基础篇 6.1. MD5加密 6.2. 盐值加密 6.3. 用户信息缓存 6.4. 获取当前用户信息 5.1. 数据库表结构 5.2. 初始化数据 5.3. 实现从数据库中读取资源信...

hello_bear
2015/07/08
0
5
spring security权限管理手册升级至spring security-3.1.3 编辑

费了半天劲,终于把原来基于spring security 2.0.5的权限管理手册升级到3.1.3。 除了官方已经不再支持ntlm和portal两个例子之外,其他的实例都已经通过了测试。下一步计划是对整体内容进行整...

xyz20003
2012/12/09
0
2
权限控制工具库--Simple RBAC

Simple RBAC 是一个简单的权限控制工具库,提供了在 Python 中使用基于角色访问控制(Role Based Access Control)的可能。该工具库有如下特性: 支持角色(Role)和资源(Resource)的多重继...

ValueError
2012/06/05
3.1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

ES6 Promise

Promise promise是异步编程的一种解决方案 1 什么是异步? 异步模式,每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则...

NDweb
17分钟前
0
0
Python百分登顶年度编程语言排行榜

今天 IEEE Spectrum 发布了 2018 年度顶级编程语言排行榜。该榜单可根据流行趋势、职业方向、语言类型等多个标准各自细分生成榜单,也可以综合多个标准进行排列,使用者可以根据自己的需求过...

六库科技
21分钟前
0
0
consul笔记

安装和启动就不说了,很简单。 注册一个服务: http://localhost:8500/v1/agent/service/register put请求,json格式内容如下 { "ID": "userServiceId", //服务id "Name": "userService", //服...

朝如青丝暮成雪
21分钟前
0
0
iOS CollectionView 的那些事

UICollectionView是开发中用的比较多的一个控件,本文记录UICollectionView在开发中常用的方法总结,包括使用UICollectionViewFlowLayout实现Grid布局、添加Header/Footer、自定义layout布局...

aron1992
21分钟前
0
0
linux tar.gz zip 解压缩 压缩命令

http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0.9.6.zip download SDK link http://dl.google.com/Android/android-sdk_r11-linux_......

owensliu
23分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部