第六章 数据库的安全性
lix_uan 91 3

概述

不安全因素

  • 非授权对数据库的恶意存取和破坏
  • 数据库中重要的数据泄露
  • 安全环境的脆弱性

自主存取控制方法

grank <权限> on table <表名> to <用户> with grant option

revoke <权限> on table <表名> from <用户> cascade 

安全性控制

数据库安全性控制

  • 用户身份鉴别

    1. 静态口令鉴别
    2. 动态口令鉴别
    3. 生物特征鉴别
    4. 智能卡鉴别
  • 存取控制

  • 自主存取控制方法 用户可以自定义和分配其它用户的操作权限

主要存取权限

1

  • reference 权限代表是否允许创建外键
  • grant 授权命令是由数据库管理员使用的,若给用户分配权限时带 with grant option 子句,则普通用户获取权限后,可以把自己的权限授予其它用户
  • revoke 回收权限

数据库角色

  • 角色指的是一类人,比如说CEO、总监、普通职员,可以给一类人授权

  • 角色的创建

    create role CEO;
  • 角色的授权

    grant <权限> on <对象类型> 对象名 to <角色1>,<角色2>
    

grant select on Student to CEO;


- 把角色授权给其它用户或角色

grant CEO to lihua with admin option;

加上 with admin option 意味着这个用户还可以把这权限授予给其它角色或者用户

- 角色权限的收回

revoke select on Student from CEO;


### 视图机制
- 为不同的用户定义不同的视图,把不需要的数据给隐藏起来,这样用户就不会进行误操作

create view CS_Student as select * from student where sdept='IS';

grant select on CS_Stuent to lixuan;

grant all privileges on CS_Student to xuan;


### 审计
- 把对数据库的所有操作都记录到审计日志中,然后就可以通过日志审查这个里面是否有一些非法的行为

对修改SC数据的操作进行审计: audit update on SC;

取消对SC表的一切审计: noaudit update on SC;

```

数据加密

  • 通过一些加密算法,把明文变成密文,这样别人就无法查看
预览图
评论区

索引目录