访问控制简介

强制访问控制(Mandatory Access Control ,MAC)

用户无法更改访问控制规则,只有系统/超级用户可以更改访问控制规则。用户只能对某文件进行授权之内的操作。用户无法给其他用户授权,即使是文件所有者也不能。强制的意思是,对所有用户而言,上述规则必须遵守,无一例外。

例如:法律,一旦成文就必须遵守,任何人不能给其他人特赦,让其有违反法律的权限。(法制社会,皇权取消了。)

强制访问控制规则是基于主体和客体的属性或其他信息制定的。

自主访问控制(Discretionary Access Control, DAC):

实体的拥有者控制对该实体的访问。

如:我有一本书,我爱借给谁看就借给谁,我不想借出就不借,不需要向其他人请示。

当强制访问控制和自主访问控制结合使用时,强制访问控制首先作用,在强制访问控制下没有某文件权限的用户,不能对该文件进行相应的操作。连强制访问控制都没通过的请求,就没必要使用自主访问控制了。如果强制访问控制通过了请求,自主访问控制再起作用,两种控制都通过了,请求才被允许。

基于原创者的访问控制(Originator-Controlled Access-Control Model and DRM):

Originator-Controlled Access-Control(ORCON)——文件的创始人决定其他人对该文件的权限。

ORCON满足两个条件

假设某音乐o的ORCON是某机构X,机构X决定将o发售给机构Y下的客户用,则:

(1)机构Y下的客户在没有机构X的授权时,不能将音乐o卖给其他机构的客户。且

(2)音乐o的任何拷贝都受(1)保护。

实现:结合使用强制访问控制和自主访问控制。强制访问控制不让音乐o的任何拥有者/使用者更改o的权限要求,并且音乐o的所有拷贝都有一样的权限要求。自主访问控制,使得音乐o的创作者X能够改变o的权限要求。

实际上,ORCON在技术上很难实现。原因在于,典型的访问控制机制所针对的对象是实体(Entities),如文件、设备或其他对象;而ORCON访问控制的对象是实体entities上的信息(Informatica)。目前尚未有有效的实现机制

基于角色的访问控制(Role-Based Access-Control Models and Groups):

基于角色的访问控制(Role-Based Access Control, RBAC),为每个主体s赋予一个角色,并且每个主体在任何时刻只能有一个角色。

公理1. (授权规则/角色赋予规则)The rule of role authorization says that the active role of s must be in the set of authorized roles of s. 主体s的当前角色,必须是s能被赋予的角色之一。

否则,s可以是任何角色,也就可以肆意妄为。

令主体s能执行命令c时,断言***canexec(s, c)*** 的值为true。

公理2. (角色分配规则)The rule of role assignment says that if canexec(s, c) is true for any s and
any c, then s must have an active role. 主体s能够执行命令c,则s一定身处一个角色。

公理3. (授权处理规则)The rule of transaction authorization says that if canexec(s, c) is true,
then only those subjects with the same role as the active role of s may also execute
transaction. 每个角色都有对应的能执行的命令集合,且角色只能执行相应命令集合中的命令。

角色的包含关系(Containment of Roles):角色A能执行的命令集合为Com,角色B是角色A的上级,则身处角色B的主体s也能执行命令集合Com。并且,角色B可能还能执行其他命令。也就是说——角色B包含角色A(role B contains role A)。 另外,如果角色C包含角色B,则角色C也包含角色A。

职责划分(Separation of duty ):某工作/任务需要两个不同的角色共同完成,并且这两个角色是互斥的。令meauth® 是角色r的互斥角色集合,其中meauth® 和角色r的权限完全不同。

公理4. (职责划分)The rule of separation of duty says that if a role a is in the set meauth(b),
then no subject for which a is an authorized role may have b as another authorized role. 保证一项任务,需要两个不同的人完成,将一个任务划分成了互斥的两部分。

‘角色roles’类似于‘组group’,但两者不同:组是系统管理员自己划分的,没有严格的划分规则;角色是根据工作任务定义的,和完成工作任务所需的命令密切相关。也就是说,角色是一种分组,但分组更宽泛一些,和完成任务工作的命令没有太大的关系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值