1.数据库的不安全因素:
1.非授权用户对数据库的恶意存取和破坏
2.数据库中重要或敏感的数据被泄露
3.安全环境的脆弱性
2.TCSEC/TDI,从四个方面来描述安全性级别划分的指标
安全策略
责任
保证
文档
3.TCSEC/TDI安全级别划分:
D
C(C1,C2)
B(B1,B2,B3)
A(A1)
按系统可靠或可信程度逐渐增高
各安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护要包含较低级别的所有保护要求,同时提供更多或更完善的保护能力
4.数据库安全性控制的常用方法:
用户标识和鉴定
存取控制
视图
审计
数据加密
5.用户身份鉴别的方法
1.静态口令鉴别
静态口令一般由用户自己设定,这些口令是静态不变的
2.动态口令鉴别
口令是动态变化的,每次鉴别时均需使用动态产生的新口令登录数据库管理系统,即采用一次一密的方法
3.生物特征鉴别
通过生物特征进行认证的技术,生物特征如指纹、虹膜和掌纹等
4.智能卡鉴别
智能卡是一种不可复制的硬件,内置集成电路的芯片,具有硬件加密功能
6.
对象类型 |
对象 |
操 作 类 型 |
数据库 模式 |
模式 |
CREATE SCHEMA |
基本表 |
CREATE TABLE,ALTER TABLE | |
视图 |
CREATE VIEW | |
索引 |
CREATE INDEX | |
数据 |
基本表和视图 |
SELECT,INSERT,UPDATE,DELETE,REFERENCES, ALL PRIVILEGES |
属性列 |
SELECT,INSERT,UPDATE, REFERENCES,ALL PRIVILEGES |
7.授权:
1.GRANT
GRANT语句的一般格式:
GRANT <权限>[,<权限>]...
ON <对象类型> <对象名>[,<对象类型> <对象名>]…
TO <用户>[,<用户>]...
[WITH GRANT OPTION];
语义:将对指定操作对象的指定操作权限授予指定的用户
发出GRANT:
数据库管理员
数据库对象创建者(即属主Owner)
拥有该权限的用户
WITH GRANT OPTION子句:
指定:可以再授予
没有指定:不能传播
不允许循环授权
8.回收:
2.REVOKE
授予的权限可以由数据库管理员或其他授权者用REVOKE语句收回
REVOKE语句的一般格式为:
REVOKE <权限>[,<权限>]...
ON <对象类型> <对象名>[,<对象类型><对象名>]…
FROM <用户>[,<用户>]...[CASCADE | RESTRICT];
9.数据库角色:
角色的创建:
CREATE ROLE <角色名>
给角色授权:
GRANT <权限>[,<权限>]…
ON <对象类型>对象名
TO <角色>[,<角色>]…
将一个角色授予其他的角色或用户
GRANT <角色1>[,<角色2>]…
TO <角色3>[,<用户1>]…
[WITH ADMIN OPTION]
角色权限的收回
REVOKE <权限>[,<权限>]…
ON <对象类型> <对象名>
FROM <角色>[,<角色>]…
用户可以回收角色的权限,从而修改角色拥有的权限
REVOKE执行者是:
角色的创建者
拥有在这个(些)角色上的ADMIN OPTION
10. 审计:
用户级审计
任何用户可设置的审计
主要是用户针对自己创建的数据库表和视图进行审计
系统级审计
只能由数据库管理员设置
监测成功或失败的登录要求、监测授权和收回操作以及其他数据库级权限下的操作
11.数据加密:
防止数据库中数据在存储和传输中失密的有效手段
加密方法:
存储加密
传输加密