- CSEC/TDI安全级别划分
安全级别 | 定义 | 具体 |
---|---|---|
A1 | 验证设计 | 提供B3级保护的同时给出系统的形式化设计说明和验证,确信各安全保护真正实现 |
B3 | 安全域 | 该级的TCB必须满足访问监视器的要求,审计跟踪能力更强,并提供系统恢复过程 |
B2 | 结构化保护 | 建立形式化的安全策略模型,并对系统内多有主体和客体实施DAC和MAC |
B1 | 标记安全保护 | 真正意义上的安全产品,对系统的数据标记,对标记的主体客体实施强制存取控制(MAC)及审计等安全机制 |
C2 | 受控的存取保护 | 安全产品的最低档,将DCA细化,以个人的身份注册负责,审计和资源隔离 |
C1 | 自主安全保护 | 实现用户和数据的分离,自主存取控制(DAC) |
D | 最小保护 | 拥有操作系统的基本功能,但却几乎没有什么保障的机制 |
- 授予:授予与收回
GRANT语句用于向用户授予权限
REVOKE语句用于收回已经授予用户的权限
GRANT INSERT //将INSERT这个操作授权给指定用户(发出授权指令的可以是数据库管理员,也可以是数据库的创建者,
//还可以是拥有该权限的用户)
ON TABLE SC
TO U5 //授权的用户可以是一个或多个,也可以是PUBLIC
//TO PUBLIC //授权给所有用户
WITH GRANT OPTION //该用户拥有授权给别人的权利
REVOKE UPDATE
ON TABLE SC
FROM U5 CASCADE //系统收回直接或间接从U5处获得权限(但其他的用户还从其他用户获得UPDATE的权限则不会收回)
创建数据库模式的权限
CREATER USER< username >[ WITH ] [ DBA | RESOURCE | CONNECT]
- 数据库角色
数据库库角色是一组权限的集合,可以通过角色名来简化授权过程。
1、角色的创建
2、给角色授权
3、将一个角色授予其他的角色或用户
4、角色权限的收回
//创建一个角色R1
CREATE ROLE R1
//使用GRANT语句,使角色R1拥有权限
GRANT SELECT,UPDATE,INSERT
//用REVOKE可以减少
ON TABLE Student
To R1
//将这个角色授予张三,李四
GRANT R1
TO 张三,李四
//将权限收回
REVOKE R1
FROM 张三,李四
- 强制存取控制方法
相比自主存取控制,自主存取控制强调“自主”,用户A将权限传给用户B,用户B依然可以对数据进行备份处理。
解决的办法就是对主客体都实施强制控制。
- 视图机制
为不同的用户定义不同的视图
CREATE VIEW CS_Student
AS
SELECT *
FROM Student
WHERE Sdept = 'CS';
GRANT SELECT
ON CS_Student
TO Mary; //Mary只能检索信息
GRANT ALL PRIVILEGES
ON CS_Student
To Jake; //Jake可以检索和增删所有的信息
- 审计
审计功能把用户对数据库的所有的操作自动记录下来放入审计日志中
//对修改SC表结构或修改SC表数据的操作进行审计
AUDIT ALTER,UPDATE
ON SC
//取消一切审计
NOAUDIT ALTER,UPDATE
ON SC