数据库的访问控制

访问控制概述

基本任务

防止非法用户进入系统及合法用户对系统资源的非法使用,它保证主体对客体的所有直接访问都是经过授权的。通俗说访问控制机制就是决定用户及代表一定用户利益的程序能做什么。

安全访问控制的三要素

  • 主体:一个能够访问对象的实体,如通常
    为进程或用户。
  • 客体:被访问的对象,如文件,数据库、
    表、元组、属性等。
  • 访问权限:是指主体对客体可进行的特定
    访问操作。如读、写、执行等。

访问控制可以分为两大类

(1)基于能力的访问控制:以访问主体为判断对象实现访问控制。访问主体能力列表中的一个元素表示为一个二元组(o,a),其中o表示资源客体,a表示一种访问控制方式。
(2)基于访问控制列表的访问控制:以资源客体为判断对象实现访问控制。资源客体访问控制列表中的一个元素表示为一个二元组(s,a),其中s表示访问主体,a表示一种访问控制方式。

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

  • 用户可以按自己的意愿对系统的参数做适当修改以决定哪些用户可以访问他们的资源,亦即一个用户可以有选择地与其它用户共享他的资源。用户有自主的决定权。
  • 用户对于不同的数据对象有不同的存取权限,不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。

强制访问控制概述(Mandatory access control,MAC)

  • 强制访问控制是指主体与客体都有一个固定的安全属性。系统通过检查主体和客体的安全属性匹配与否来决定一个主体是否可以访问某个客体资源。安全属性是强制性的规定,它是由安全管理员,或者是操作系统根据限定的规则确定的,用户或用户的程序不能加以修改。

如果系统认为具有某一个安全属性的主体不适于访问某个资源,那么任何人(包括资源的拥有者)都无法使该主体具有访问该文件的权力。

基于角色的访问控制概述(Role-Based Access Control, RBAC)

  • 访问权限与角色相关联,角色再与用户关联,从而实现了用户与访问权限的逻辑分离。
RBAC中的基本概念
  • 用户(User):访问系统中的资源的主体
  • 权限(Permission):对计算机中某些受保护的资源的访问许可
  • 角色(Role):应用领域内一种权力和责任的语义综合体
    可以是一个抽象概念,也可以是对应于实际系统中的特定语义体,比如组织内部的职务等
    针对角色属性的不同,某些模型中将角色进一步细分为普通角色(Regular Role)和管理员角色(Administrative Role)
  • 角色与组的区别
  1. 组:一组用户的集合
  2. 角色:一组用户的集合 + 一组操作权限的集合
  • 用户指派(User Assignment):用户集到角色集的多对多的关系
  • 权限指派(Permission Assignment):权限集到角色集的多对多的关系
  • 会话(Session):对应于一个用户以及一组激活的角色。用户每次必须通过建立会话来激活角色,得到相应的访问权限
RBAC中的核心模型

包括五个基本数据元素: 用户、角色、目标或对象、操作、特权
关系:多对多,用户被分配一定角色,角色被分配一定的许可权
会话:是用户与激活的角色集合之间的映射

自主访问控制

发布了12 篇原创文章 · 获赞 0 · 访问量 170

猜你喜欢

转载自blog.csdn.net/qq_41985293/article/details/103283563