第4章:数据库安全性

文章目录

  • 第4章:数据库安全性
    • 4.1、数据库安全性控制
    • 4.2、用户标识和鉴定
    • 4.3、存取控制
      • 4.3.1、存取控制概述
      • 4.3.2、自主存取控制(DAC)
      • 4.3.3、强制存取控制(MAC)
    • 4.4、视图机制
    • 4.5、审计(Audit)

第4章:数据库安全性

基于SQLServer学习使用,与MySQL有略微差别!

4.1、数据库安全性控制

对数据库进行安全性控制的常用机制

  1. 用户标识和鉴定
  2. 存取控制
  3. 视图机制
  4. 审计
  5. 数据加密

4.2、用户标识和鉴定

  • 系统提供的最外层安全保护措施
  • 基本方法
    • 系统提供一定的方式让用户标识自己的名字或身份。
    • 每次用户要求进入系统时,由系统核对用户提供的身份标识。
    • 通过鉴定后才提供系统使用权。

4.3、存取控制

4.3.1、存取控制概述

  • 存取控制机制作用

    • 只允许用户来存取允许他存取的数据。
    • 不允许用户存取的数据,该用户无法接触。
  • 存取控制机制的实现方式

    • 授权
  • 存取控制机制的组成

    • 定义存取权限
      • 在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义存取权限,这些权限最终被存放在数据字典中,被称安全规则或授权规则
    • 检查存取权限
      • 每当用户发出存取数据库的操作请求后,DBMS查找数据字典,根据安全规则进行合法权限检查,若用户的操作请求超出了定义的权限,系统将拒绝执行此操作。
  • 存取权限定义和存取权限检查机制一起组成了DBMS的安全子系统

  • 常用存取控制方法

    • 自主存取控制(Discretionary Access Control ,简称DAC)
    • 强制存取控制(Mandatory Access Control,简称 MAC)(一般用于军用系统,对安全性要求非常高)

4.3.2、自主存取控制(DAC)

  • 自主存取控制方法

    • 同一用户对于不同的数据对象有不同的存取权限
    • 不同的用户对同一对象也有不同的存取权限
    • 用户还可将其拥有的存取权限转授(传播)给其他用户
  • 定义存取权限称为授权

  • 谁可以授权

    • DBA(数据库管理员)、表的建立者(即表的属主)、拥有一定权限的其他用户
  • 如何授权

    • SQL语句:grant

下面主要讲述的是对 SQLServer 中的用户进行的授权操作:

  • Login(登录)(服务器级别)
    是服务器一级的概念,表示登录某个服务器的凭证,比如在服务器A上有一个数据库,那么想要访问该数据库,第一步要做的事情就是先登录到持有该数据库的服务器A上。

  • User(用户)(数据库级别)
    有了一个Login,表明你可以登录持有数据库的服务器A ,并不表明你能够访问数据库,你只有成为数据库的User,才能访问该数据库。

  • Login和User的关系

    • 每个User必须对应一个Login。
    • 每个Login可以对应多个User,前提是User在不同的数据库中

你可能感兴趣的:(数据库系统概论(第五版),数据库)