第4章数据库安全性控制

更新时间:2023-07-29 23:34:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第四章 数据库安全性 Yusncun@

问题的提出 –数据库的一大特点是数据可以共享 –但数据共享必然带来数据库的安全性问题 –数据库系统中的数据共享不能是无条件的共 享

什么是数据库的安全性 数据库的安全性是指保护数据库,防止 因用户非法使用数据库造成数据泄露、 更改或破坏。

数据库保护概况 数据库破坏类型– – – – – – – – 人为破坏; 对数据操作引入的数据错误。 系统错误; 并发执行引起数据不一致; 人为破坏 ── 数据库安全; 对数据操作引入的数据错误 ── 数据库完整性。 系统错误── 故障恢复; 并发执行引起数据不一致 ── 并发控制;

各种类型的保护措施

本章主要内容: 计算机安全性概论 数据库安全性控制

4.1 计算机安全性概论 什么是计算机系统安全性– 为计算机系统建立和采取的各种安全保护措 施,以保护计算机系统中的硬件、软件及数 据,防止其因偶然或恶意的原因使系统遭到 破坏,数据遭到更改或泄露等。

三类计算机系统安全性问题 技术安全类 管理安全类 政策法律类

TCSEC/TDI安全级别划分安全级别 A1 B3 B2 定义 验证设计(Verified Design) 安全域(Security Domains) 结构化保护(Structural Protection)

B1C2 C1

标记安全保护(Labeled Security Protection) 受控的存取保护(Controlled Access Protection) 自主安全保护(Discretionary Security Protection) 最小保护(Minimal Protection)

D

4.2 数据库安全性控制高

安全性控制层次

用户

DBMS

OS

DB

用户标识 和鉴定

存取控制 审计 视图

操作系统 安全保护

密码存储

数据库安全性控制的常用方法 用户标识和鉴定 存取控制 视图 审计 密码存储

(一) 用户标识与鉴别 系统提供的最外层安全保护措施– 软件验证技术:口令验证、问/答验证等技 术; – 硬件验证技术:指纹验证、声音识别验证、 手写签名验证、手型几何验证和身份卡验证 等技术。

在实际运用中,可根据需要选择其中的 一种或多种技术进行用户验证。

(二) 存取控制 DBMS规定用户想要操作DB中的数据,必 须拥有相应的权限。 DBMS将授权结果存放入数据字典。 当用户提出操作请求时,DBMS会根据数 据字典中保存的授权信息,判断用户是 否有权对相应对象进行操作,若无权则 拒绝执行操作。

常用存取控制方法 自主存取控制(Discretionary Access Control ,简称DAC)– C2级 – 灵活

强制存取控制(Mandatory Access Control,简称 MAC)– B1级 – 严格

1. 自主存取控制方法 自主存取控制就是由用户(如数据库管 理员)自主控制

对数据库对象的操作权 限,哪些用户可以对哪些对象、进行哪 些操作,完全取决于用户之间的授权。 通过 SQL 的 GRANT 语句和 REVOKE 语句实现

关系数据库系统中存取控制对象对象类型 数据库 对象 模式 基本表 模式 视图 索引 数据 数据 基本表和视图 属性列 CREATE SCHEMA CREATE TABLE,ALTER TABLE CREATE VIEW CREATE INDEX SELECT,INSERT,UPDATE,DELETE,REFERENCES, ALL PRIVILEGES SELECT,INSERT,UPDATE, REFERENCES ALL PRIVILEGES 操作类型

关系数据库系统中的存取权限

授权与回收 创建登录账号 可以通过CREATE LOGIN语句创建登录账号。格式如下: CREATE LOGIN login_name {WITH option_list1 | FROM sources} sources定义为: WINDOWS [WITH windows_options [,...]] option_list1定义为: PASSWORD = 'password' [ MUST_CHANGE ] [,option_list2 [ ,...]] option_list2定义为: DEFAULT_DATABASE = database | DEFAULT_LANGUAGE = language | CHECK_EXPIRATION = { ON | OFF} | CHECK_POLICY = { ON | OFF} windows_options定义为: DEFAULT_DATABASE = database| DEFAULT_LANGUAGE = language

例,– CREATE LOGIN log1 WITH PASSWORD = '000000',DEFAULT_DATABASE = test

删除登录账号使用T-SQL语句删除登录账号 使用T-SQL语句DROP LOGIN删除登录 账号。其基本格式如下: DROP LOGIN login_name例,DROP LOGIN log1

数据库用户账号管理使用T-SQL语句创建用户账号 其基本格式如下:CREATE USER user_name [ { { FOR | FROM } { LOGIN login_name } | WITHOUT LOGIN ] [ WITH DEFAULT_SCHEMA = schema_name ]

例, CREATE USER u1 FOR LOGIN log1

本文来源:https://www.bwwdw.com/article/hd2m.html

Top