数据库系统简明教程_第1页
数据库系统简明教程_第2页
数据库系统简明教程_第3页
数据库系统简明教程_第4页
数据库系统简明教程_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库系统简明教程 第五章 数据库安全性,数据库安全性,问题的提出 数据库的一大特点是数据可以共享 但数据共享必然带来数据库的安全性问题 数据库系统中的数据共享不能是无条件的共享 例:军事秘密、 国家机密、 新产品实验数据、 市场需求分析、市场营销策略、销售计划、 客户档案、 医疗档案、 银行储蓄数据,数据库安全性(续,数据库中数据的共享是在DBMS统一的严格的控制之下的共享,即只允许有合法使用权限的用户访问允许他存取的数据 数据库系统的安全保护措施是否有效是数据库系统主要的性能指标之一,数据库安全性(续,什么是数据库的安全性 数据库的安全性是指保护数据库,以防止不合法的使用所造成的数据泄露、

2、更改或破坏。 什么是数据的保密 数据保密是指用户合法地访问到机密数据后能否对这些数据保密。 通过制订法律道德准则和政策法规来保证,计算机系统的三类安全性问题,什么是计算机系统安全性 为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等,计算机系统的三类安全性问题(续,计算机安全涉及问题 计算机系统本身的技术问题 计算机安全理论与策略 计算机安全技术 管理问题 安全管理 安全评价 安全产品,计算机系统的三类安全性问题(续,计算机安全涉及问题(续) 法学 计算机安全法律 犯罪学 计算机犯罪与侦察 安全监察 心理

3、学,计算机系统的三类安全性问题(续,三类计算机系统安全性问题 技术安全类 管理安全类 政策法律类,计算机系统的三类安全性问题(续,技术安全 指计算机系统中采用具有一定安全性的硬件、软件来实现对计算机系统及其所存数据的安全保护,当计算机系统受到无意或恶意的攻击时仍能保证系统正常运行,保证系统内的数据不增加、不丢失、不泄露,计算机系统的三类安全性问题(续,管理安全 软硬件意外故障、场地的意外事故、管理不善导致的计算机设备和数据介质的物理破坏、丢失等安全问题,计算机系统的三类安全性问题(续,政策法律类 政府部门建立的有关计算机犯罪、数据安全保密的法律道德准则和政策法规、法令,计算机系统中的安全模型,

4、方法,用户标识 和鉴别,存取控制 审计 视图,操作系统 安全保护,数据密码存储,数据库安全性控制概述(续,数据库安全性控制的常用方法 用户标识和鉴别 存取控制 视图 审计 密码存储,用户标识与鉴别,用户标识与鉴别 (Identification & Authentication) 系统提供的最外层安全保护措施,用户标识与鉴别,基本方法 系统提供一定的方式让用户标识自己的名字或身份; 系统内部记录着所有合法用户的标识; 每次用户要求进入系统时,由系统核对用户提供的身份标识; 通过鉴定后才提供机器使用权。 用户标识和鉴定可以重复多次,用户标识自己的名字或身份,用户名/口令 简单易行,容易被人窃取

5、每个用户预先约定好一个计算过程或者函数 系统提供一个随机数 用户根据自己预先约定的计算过程或者函数进行计算 系统根据用户计算结果是否正确鉴定用户身份,存取控制,存取控制机制的功能 存取控制机制的组成 定义存取权限 检查存取权限 用户权限定义和合法权检查机制一起组成了DBMS的安全子系统,存取控制(续,定义存取权限 在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义存取权限。 检查存取权限 对于通过鉴定获得上机权的用户(即合法用户),系统根据他的存取权限定义对他的各种操作请求进行控制,确保他只执行合法操作,存取控制(续,常用存取控制方法 自主存取控制(Discretio

6、nary Access Control ,简称DAC) 灵活 强制存取控制(Mandatory Access Control,简称 MAC) 严格,自主存取控制方法,同一用户对于不同的数据对象有不同的存取权限 不同的用户对同一对象也有不同的权限 用户还可将其拥有的存取权限转授给其他用户,强制存取控制方法,每一个数据对象被标以一定的密级 每一个用户也被授予某一个级别的许可证 对于任意一个对象,只有具有合法许可证的用户才可以存取,数据库存取控制方法,关系系统中的存取权限 定义方法 GRANT/REVOKE,数据库存取控制方法(续,关系系统中的存取权限(续) 例: 一张授权表 用户名 数据对象名 允

7、许的操作类型 王 平 关系Student SELECT 张明霞 关系Student UPDATE 张明霞 关系Course ALL 张明霞 SC. Grade UPDATE 张明霞 SC. Sno SELECT 张明霞 SC. Cno SELECT,数据库存取控制方法(续,检查存取权限 对于获得上机权后又进一步发出存取数据库操作的用户 DBMS查找数据字典,根据其存取权限对操作的合法性进行检查 若用户的操作请求超出了定义的权限,系统将拒绝执行此操作,数据库存取控制方法(续,授权粒度 授权粒度是指可以定义的数据对象的范围 它是衡量授权机制是否灵活的一个重要指标。 授权定义中数据对象的粒度越细,即

8、可以定义的数据对象的范围越小,授权子系统就越灵活,数据库存取控制方法(续,关系数据库中授权的数据对象粒度 数据库 表 属性列 行 能否提供与数据值有关的授权反映了授权子系统精巧程度,数据库存取控制方法(续,实现与数据值有关的授权 利用存取谓词 存取谓词可以很复杂 可以引用系统变量,如终端设备号,系统时钟等,实现与时间地点有关的存取权限,这样用户只能在某段时间内,某台终端上存取有关数据 例:规定“教师只能在每年1月份和7月份星期一至星期五上午8点到下午5点处理学生成绩数据,数据库存取控制方法(续,例:扩充后的授权表 用户名 数据对象名 允许的操作类型 存取谓词 王平 关系Student SELE

9、CT Sdept=CS 张明霞 关系Student UPDATE Sname=张明霞 张明霞 关系 Course ALL 空,SQL Server的安全性管理,SQL Server的安全性管理包括以下几个方面: 1.数据库登录管理 2.数据库用户管理 3.数据库角色管理 4.数据库权限的管理,SQL Server数据库安全性管理与控制,1. 数据库登录管理 (1)创建服务器登录帐号使用企业管理器创建登录帐号的步骤如下: a. 选择【开始】|【程序】|Microsoft SQL Server|【企业管理器】,打开企业管理器窗口,找到要登录的服务器,展开【安全性】文件夹,右击【登录】,弹出快捷菜单

10、,SQL Server数据库安全性管理与控制,b.在快捷菜单中选择【新建登录】命令,将会弹出【登录属性】对话框。 在【企业管理器】窗口,可以选择【操作】|【新建登录】命令,也可以打开【新建登录】对话框。 (2)查看修改登录帐号 (3)删除登录帐号,SQL Server数据库安全性管理与控制,2. 用户的管理 (1)使用系统存储过程sp_grantdbaccess创建用户帐号 语法形式如下: sp_grantdbaccesslogin,name_in_db (2)使用系统存储过程sp_revokedbaccess删除用户帐号,SQL Server数据库安全性管理与控制,2)使用系统存储过程sp_

11、revokedbaccess删除用户帐号 语法形式如下: sp_revokedbaccessname,SQL Server数据库安全性管理与控制,3. 角色的管理 固定服务器角色 语法形式如下: sp_addsrvrolememberlogin,role 固定数据库角色 语法形式如下: sp_addrolemember role,security_account,SQL Server数据库安全性管理与控制,用户自定义角色 语法形式如下: sp_addrole role,owner 标准角色 语法形式如下: sp_addrolemember role,security_account,SQL S

12、erver数据库安全性管理与控制,应用程序角色 它的语法形式如下: sp_addapprole role,password,SQL Server的安全体系结构和安全认证,SQL Server的安全体系结构 安全认证 安全认证的基本概念 Windows认证模式 混合认证模式,SQL Server的安全体系结构和安全认证,认证模式的设置 (1)选择【开始】|【程序】|Microsoft SQL Server|【企业管理器】,打开企业管理器窗口,右击要进行认证模式设置的服务器,在弹出的快捷菜单中选择【属性】命令,弹出【属性】|【安全性】对话框,SQL Server的安全体系结构和安全认证,2)在该对

13、话框中打开【安全性】选项卡,它分为两部分,【安全性】选项组和【启动服务帐户】选项组。在【安全性】选项组中,对于【身份验证】:选择要设置的认证模式;【审核级别】:设置用户登录信息,用来决定追踪记录用户登录时的信息,如登录成功或失败的信息。在【启动服务帐户】选项组中设置启动SQL Server时默认的帐户。 填好上述信息后,单击【确定】按钮,SQL Server的权限管理,权限的种类 对象权限: 用户对数据库对象进行操作的权限,具体包括: a. 针对表和视图的操作:SELECT、INSERT、UPDATE 和 DELETE 语句。 b. 针对表和视图的行的操作:INSERT 和 DELETE语句。

14、 c. 针对表和视图的列的操作:SELECT 和 UPDATE语句。 d. 针对存储过程和用户定义的函数的操作:EXECUTE语句,SQL Server的权限管理,语句权限: 指用户是否具有权限来执行某一语句。这些语句包括: CREATE DATABASE CREATE DEFAULT CREATE FUNCTION CREATE PROCEDURE CREATE RULE CREATE TABLE CREATE VIEW BACKUP DATABASE BACKUP LOG,SQL Server的权限管理,暗示性权限: 指系统预定义的固定服务器角色成员、数据库拥有者(dbo)和数据库对象拥有

15、者(dboo)所拥有的权限,SQL Server的权限管理,2. 权限的设置 权限设置包括三个内容:授予权限(Grant)、撤消权限(Revoke)、和拒绝访问(Deny)。有两种方法可以设置权限,一是使用企业管理器,二是使用Transact-SQL语句,SQL Server的权限管理,使用企业管理器 面向单一用户的权限设置,SQL Server的安全体系结构和安全认证,2)使用Transact-SQL语句 GRANT DENY REVOKE,数据库存取控制方法(续,自主存取控制小结 定义存取权限 用户 检查存取权限 DBMS,数据库存取控制方法(续,自主存取控制小结(续) 授权粒度 数据对象

16、粒度:数据库、表、属性列、行 数据值粒度:存取谓词 授权粒度越细,授权子系统就越灵活,能够提供的安全性就越完善。但另一方面,因数据字典变大变复杂,系统定义与检查权限的开销也会相应地增大,自主存取控制方法(续,自主存取控制小结(续) 优点 能够通过授权机制有效地控制其他用户对敏感数据的存取,自主存取控制方法(续,自主存取控制小结(续) 缺点 可能存在数据的“无意泄露” 原因:这种机制仅仅通过对数据的存取权限来进行安全控制,而数据本身并无安全性标记。 解决:对系统控制下的所有主客体实施强制存取控制策略,视图机制,视图机制把要保密的数据对无权存取这些数据的用户隐藏起来, 视图机制更主要的功能在于提供

17、数据独立性,其安全保护功能太不精细,往往远不能达到应用系统的要求,视图机制(续,视图机制与授权机制配合使用: 首先用视图机制屏蔽掉一部分保密数据 视图上面再进一步定义存取权限 间接实现了支持存取谓词的用户权限定义,视图机制(续,例:王平只能检索计算机系学生的信息 先建立计算机系学生的视图CS_Student CREATE VIEW CS_Student AS SELECT FROM Student WHERE Sdept=CS,视图机制(续,在视图上进一步定义存取权限 GRANT SELECT ON CS_Student TO 王平,审计,什么是审计 启用一个专用的审计日志(Audit Log) 将用户对数据库的所有操作记录

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论