第9章数据库的安全性与完整性 重点
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(5)操作系统安全保护
通过操作系统提供的安全措施来保证
数据库的安全性。
SHUJUKU XITONG YUANLI
第九章
(6)数据加密
数据加密是防止数据库中的数据在存 储和传输中失密的有效手段。加密方法 主要有两种:替换方法和置换方法. 加密方法主要有两种: 1)替换方法,该方法使用密钥将明文中 的每一个字符转换为密文中的字符。 2)置换方法,该方法仅将明文的字符按 不同的顺序重新排列。
许指定 用户存取指定数据。
(4) 运行方面的问题,如使用口令时,如何
使口令保密。
(5)硬件控制方面的问题,如CPU是否提供
任何安全性方面的功能。
SHUJUKU XITONG YUANLI
第九章
(6)操作系统安全性方面的问题,如在主存储
器和数据文件用过以后,操作系统是否把它
们的内容清除掉。
SHUJUKU XITONG YUANLI
第九章 服 务 器 角 色 负 责 整 个 Microsoft SQL
Server服务器的访问权限,而数据库角色只
负责某个数据库的访问权限。数据库角色可 再往下分为三类 : 固定数据库角色、公共角
色和自定义数据库角色 , 而服务器角色只包
含固定服务器角色。
第九章
9.1
数据库的安全性
9.1.1 数据库安全性
9.1.2 数据库安全控制的一般方法 9.1.3 SQL Server 的用户与安全
性管理
An Introduction to Database Systems
第九章
9.1.1 数 据 库 的 安 全 性
数据库的安全性是指保护数据库,防止因用
SHUJUKU XITONG YUANLI
第九章 ⑤ 应用程序角色
该角色不分配给任何用户 , 而是分配给某一
个运行在Microsoft SQL Server上的应用程序。
设置应用程序角色的原因有两点:
一是限制访问数据库所使用的应用程序; 二是提高Microsoft SQL Server服务器的运 行性能,避免在此服务器上运行其他程序。
包括恶意破坏数据和越权存取数据。完整性则是
防止合法用户使用数据库时向数据库中加入不合
语义的数据。也就是说,安全性措施的防范对象
是非法用户和非法操作,完整性措施的防范对象
是不合语义的数据。
SHUJUKU XITONG YUANLI
第九章
9.2
完整性控制
9.2.1 9.2.2 9.2.3 9.2.4
户的个人特征。
SHUJUKU XITONG YUANLI
第九章
(2)存取控制
数据库系统中,为了保证用户只能访问他有
权存取的数据,必须预先对每个用户定义存取权
限。存取权限是由两个要素组成的:数据对象和
操作类型。在数据库系统中,定义存取权限称为
授权( Authorization )。衡量授权机制是否灵 活的一个重要指标是授权粒度,即可以定义的数 据对象的范围。授权粒度越细,授权子系统就越 灵活,能够提供的安全性就越完善。
SHUJUKU XITONG YUANLI
第九章
3. 安全性控制命令
(1)增加SQL Server用户
可以执行系统存储过程 sp_add1ogin,它的格式
如下: Sp_addloginlogin_id[,passwd[,defdb[,deflang uage]]]
SHUJUKU XITONG YUANLI
SHUJUKU XITONG YUANLI
第九章
(3)视图机制
关系数据库系统中,就是为不同的用户定义 不同的视图,通过视图机制把要保密的数据对无 权存取这些数据的用户隐藏起来,从而自动地对
数据提供一定程度的安全保护。
SHUJUKU XITONG YUANLI
第九章
(4)审计
审计功能是一种监视措施,它跟踪记录 有关数据的访问活动。审计功能一般主要 用于安全性要求较高的部门。
户非法使用数据库造成数据泄露、更改或破
坏。
安全性问题有许多方面,其中包括:
(1)法律、社会和伦理方面的问题,例如请求 查询信息的人是不是有合法的权力。 (2)物理控制方面的问题,例如计算机机房是 否应该加锁或用其他方法加以保护。
SHUJUKU XITONG YUANLI
第九章
(3) 政策方面的问题,如确定存取原则,允
一般来说,访问Microsoft SQL Server数
据库需经过以下三个步骤:
SHUJUKU XITONG YUANLI
第九章
(1) 在Microsoft
SQL Server服务器上建立服务器登
录标识。
(2) 在数据库中建立用户帐号、角色并设置用
户访问权限。
角色是数据库访问权限的管理单位 , 其成 员继承角色的访问权限。 角色共分两种:服务器角色和数据库角色。
第九章 (2) 增加数据库用户 sp_adduser login_id[,username[,grpname]] (3) 创建用户组 sp_addgroup grpname (4) 用户口令 sp_password old_passwd ,new_passwd[,login_id]
SHUJUKU XITONG YUANLI
DISK ADMINISTRATORS (diskadmin) :该角
色负责管理磁盘文件。
SHUJUKU XITONG YUANLI
第九章
PROCESS ADMINISTRATORS(processadmin) : 该
角色管理运行在 Microsoft SQL Server 上的不
同进程。
(7)数据库系统本身的安全性方面的问题。本
章主要讨论的就是数据库系统本身的安全性 问题,主要考虑安全保护的策略,尤其是控 制访问的策略。
SHUJUKU XITONG YUANLI
第九章
9.1
数据库的安全性
9.1.1 9.1.2 9.1.3
数据库安全性 数据库安全控制的一般方法 SQL Server 的 用 户 与 安 全
第九章
第九章 数据库的安全性与完整性 数据库的安全性 完整性控制
9.1 9.2
An Introduction to Database Systems
第九章
9.2
完整性控制
9.2.1 9.2.2 9.2.3 9.2.4
数据库完整性的含义 完整性规则的组成 完整性约束条件的分类 触发器(Trigger)
第九章
句权限
创建数据库:CREATE DATABASE 创建关系属性的默认值:CREATE DEFAULT 创建存储过程:CREATE PROCEDURE
创建关系中属取值性规则:CREATE RULE
创建视图:CREATE VIEW 备份数据库:BACKUP DATABASE 备份事务日志:BACKUP TRANSACTION
性管理
An Introduction to Database Systems
第九章
9.1.2数据库安全控制的一般方法
安全性控制就是要尽可能地杜绝所有可 能的数据库非法访问,不管它们是有意的还 是无意的。
用户
用户标识和鉴别
DBMS
存取控制
OS
操作系统安全保护
DB
密码存储
计算机系统的安全模型
SHUJUKU XITONG YUANLI
数 据 库 对 象
SQL Server的四个环节
SHUJUKU XITONG YUANLI
第九章 1.进入Microsoft SQL Server服务器
Microsoft SQL Server有两种鉴别模式:
Windows鉴别和Microsoft SQL Server鉴
别。
2. 访问Microsoft SQL Server数据库
SQL Server的用户与安全性管理
Microsoft SQL Server 的安全性是非常牢靠
的,任何用户企图访问数据库中的数据之前,必须
要通过四道关卡,下图 表示出了这四个环节。
SHUJUKU XITONG YUANLI
第九章
用户登 录请求
操作系 统
SQL Server 数据库 服务器
SQL Server 数据库
数据库完整性的含义 完整性规则的组成 完整性约束条件的分类 触发器(Trigger)
An Introduction to Database Systems
第九章
9.2.2 完整性规则的组成
完整性规则主要由以下三部分构成: ( 1 )触发条件:规定系统什么时候使用规则 来检查数据。 ( 2 )约束条件:规定系统检查用户发出的操 作请求违背了什么样的完整性约束条件。 ( 3 )违约响应:规定系统如果发现用户的操
SHUJUKU XITONG YUANLI
第九章
② 固定数据库角色
DATABASE OWNER (db_owner):该角色
拥有某个数据库的所有权限 , 能执行其他数
据库角色的操作。
DATABASE
ACCESS
ADMINISTRATOR(db_accessadmin) : 该
角色管理某个数据库的用户帐号。
An Introduction to Database Systems
第九章
9.1
数据库的安全性
9.1.1 数据库安全性
9.1.2 数据库安全控制的一般方法
9.1.3 SQL Server 的用户与安全
性管理
An Introduction to Database Systems
第九章
An Introduction to Database Systems
第九章
9.2.1 数据库完整性的含义
数据库的完整性是指数据的正确性、
有效性和相容性,防止错误的数据进
入数据库造成无效操作。
SHUJUKU XITONG YUANLI
第九章
数据的完整性与安全性是数据库保护的两个
不同方面。安全性是防止用户非法使用数据库,
SHUJUKU XITONG YUANLI
第九章 ① 固定服务器角色
SYSTEM ADMINISTRATORS(sysadmin): 该
角色权限最大 , 能执行任何操作 , 包括否决其他 固定服务器角色。
DATABASE CREATORS (dbcreator):该角色
能创建和修改数据库。
数据库系统原理
SHUJUKU XITONG YUANLI
中国计量学院信息学院
China JiLiang University 2009
SHUJUKU XITONG YUANLI
第九章 数据库的安全性与完整性
9.1 数据库的安全性 9.2 完整性控制
An Introduction to Database Systems
份数据库的工作。
SHUJUKU XITONG YUANLI
第九章 ③ 公共角色 每一个数据库都有一个公共角色 , 每 创建一个新的用户帐号时 , 此帐号自动拥 有该角色。不能对该角色添加或修改用 户帐号 , 对其唯一的操作是为它分配权限。 ④ 自定义数据库角色 自定义数据库角色同固定数据库角色
一样,管理多个用户的相同权限。
SHUJUKU XITONG YUANLI
第九章
DATABASE SECURITY ADMINISTRATOR
(db_securityadmin):该角色管理数据库的用户
帐号和角色以及语句和对象权限。
DATABASE BACKUP
ห้องสมุดไป่ตู้
OPERATOR(db_dumpoperator):该角色负责备
SHUJUKU XITONG YUANLI
第九章
(3) 设置语句和对象权限
用户可获得的权限主要有:
① 对象权限
字段:SELECT、UPDATE、REFERENCES
视 图 :SELECT 、 UPDATE 、 DELETE 、
INSERT
存储过程:EXECUTE
SHUJUKU XITONG YUANLI
第九章
(1)用户标识和鉴定
用 户 标 识 和 鉴 定 ( Identification &
Authentication)是系统提供的最外层安全
保护措施。标识和鉴定一个用户最常用的方
法是用一个用户名或用户标识号来标明用户
身份,通过用户名和口令来鉴定用户的方法
简单易行,但用户名与口令容易被人窃取,
因此还可以用更复杂的方法。例如,利用用
SECURITY ADMINISTRATORS(securityadmin) :
该角色管理服务器注册。
Server ADMINISTRATORS(Serveradmin) : 该 角
色设置服务器配置。
SETUP ADMINISTRATORS ( setupadmin ) : 该 角
色安装 Microsoft SQL Server 同步复制和管理 扩展过程。