数据库原理及应用---第11章 数据库的安全性管理.ppt_第1页
数据库原理及应用---第11章 数据库的安全性管理.ppt_第2页
数据库原理及应用---第11章 数据库的安全性管理.ppt_第3页
数据库原理及应用---第11章 数据库的安全性管理.ppt_第4页
数据库原理及应用---第11章 数据库的安全性管理.ppt_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

数据库原理及应用 An Introduction to Database System,数据库系统概论 An Introduction to Database System 第11章 数据库的安全性管理,第11章 数据库的安全性管理,11.1数据库安全性控制的一般方法 11.2 SQL Server 的安全性机制 11.3登录和用户 11.4权限管理 11.5角色管理 11.6 其它安全设置,教学目标,掌握SQL Sever 的安全机制,了解登录和用户的概念。 掌握权限管理和掌握角色管理。 要求读者深入理解SQL Server 的安全机制,以及掌握常用的管理操作,培养良好的数据库安全意识以及制定合理的数据库安全策略。 建立网络数据库概念,锻炼实际数据库管理能力,为今后从事数据库管理员(DBA)的工作奠定基础。,11.1数据库安全性控制的一般方法,1.1.1安全性级别 1.1.2 数据库安全控制的一般方法 1.1.3关系数据库标准语言SQL的自主存取控制方法,引子,2009年8月,美国1.3亿张信用卡账户信息的遭泄漏 2009年9月,荷银客户巨额存款被盗 2010年1月海南视窗“嗨!海南”整个程序和数据被盗窃 2010年1月,武汉大学教务系统数据被入侵,黑客入侵,重庆某大学校园网 学生考试信息全部丢失,11.1数据库安全性控制的一般方法,对数据库不合法的使用称为数据库的滥用。 数据库的滥用可分为无意滥用和恶意滥用。无意滥用主要是指经过授权的用户操作不当引起的系统故障、数据库异常等现象。 恶意滥用主要是指未经授权的读取数据(即偷窃信息)和未经授权的修改数据(即破坏数据)。,11.1数据库安全性控制的一般方法,数据库的安全性是指保护数据库,以防止不合法的使用造成的数据泄密、更改或破坏。数据库管理系统安全性保护,就是通过种种防范措施以防止用户越权使用数据库。安全保护措施是否有效是衡量数据库系统的主要性能指标之一。,11.1.1安全性级别,为了防止数据库的恶意滥用,可以在下述不同的安全级别上设置各种安全措施。 环境级 职员级 操作系统级 网络级 数据库系统级,11.1.2 数据库安全控制的一般方法,数据库系统中一般采用用户标识和鉴别、存取控制、视图以及密码存储等技术进行安全控制。,11.1.2 数据库安全控制的一般方法,用户标识和鉴别是DBMS提供的最外层保护措施。用户每次登录数据库时都要输入用户标识,DBMS进行核对后,对于合法的用户获得进入系统最外层的权限。常用的方法有:,身份(Identification)认证 口令(Password)认证 随机数运算认证,11.1.2 数据库安全控制的一般方法,存取控制(授权机制) :进一步对用户进行识别和鉴定,以拒绝没有数据库使用权的用户(非法用户)对数据库进行存取操作。它确保具有数据库使用权限的用户访问数据库并进行权限范围内的操作,同时令未被授权的用户无法接近数据。,11.1.2 数据库安全控制的一般方法,存取控制(授权机制) 构成,定义用户权限 (操作种类 +DCL),进行权限检查,11.1.2 数据库安全控制的一般方法,存取控制(授权机制) 分类 自主存取控制方法(灵活):用户对于不同的数据对象可以有不同的存取权限,不同的用户对同一数据对象的存取权限也可以各不相同,用户还可以将自己拥有的存取权限转授给其他用户。 强制存取控制方法(严格):每一个数据对象被标以一定的密级;每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法许可证的用户才可以存取。,11.1.2 数据库安全控制的一般方法,视图机制:通过定义用户的外模式来提供一定的安全保护功能。在关系数据库中,可以为不同的用户定义不同的视图,通过视图机制把要保密的数据对无权操作的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。,11.1.2 数据库安全控制的一般方法,审计方法 :把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中,一旦发生数据被非法存取,DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。 实现太难,11.1.2 数据库安全控制的一般方法,数据加密 :加密的基本思想是根据一定的算法将原始数据(称为明文)变换为不可直接识别的格式(称为密文),从而使得不知道解密算法的人无法获得数据的内容。,A,#,A,11.1.3关系数据库标准语言SQL 自主存取控制方法,SQL标准对自主存取控制提供了支持,其DCL主要是GRANT(授权)语句和REVOKE(收权)语句。,1. 关系中的用户权限,定义权限,规定对象操作,11.1.3关系数据库标准语言SQL 自主存取控制方法,11.1.3关系数据库标准语言SQL 自主存取控制方法,11.1.3关系数据库标准语言SQL的自主存取控制方法,2. SQL的存取控制功能-授权和收权语句 格式:GRANT 权限1,权限2,ON 对象类型 对象名称 TO 用户1,用户2, WITH GRANT OPTION 功能:将指定数据对象的指定权限授予指定的用户。,11.1.3关系数据库标准语言SQL的自主存取控制方法,例1 把对读者信息表(readers)中的列“姓名”修改、查询表的权限授予用户user1的语句可以写为: GRANT UPDATE(姓名),SELECT ON TABLE readers TO user1; 例2把对表readers,books, borrowinf的查询、修改、插入和删除等全部权限授予用户user1和用户user2的语句可以写为: GRANT ALL PRIVILIGES ON TABLE readers,books, borrowinf TO userl,user2;,11.1.3关系数据库标准语言SQL的自主存取控制方法,例3 把对表books的查询权限授予所有用户。 GRANT SELECT ON TABLE books TO PUBLIC; 例4 把在数据库MyDB中建立表的权限授予用户user2。 GRANT CREATETAB ON DATABASE MyDB TO user2;,11.1.3关系数据库标准语言SQL的自主存取控制方法,例5 把对表readers的查询权限授予用户user3,并给用户user3有再授予的权限。 GRANT SELECT ON TABLE readers TO user3 WITH GRANT OPTION; 例6 用户user3把查询readers表的权限授予用户user4。 GRANT SELECT ON TABLE readers TO user4;,11.1.3关系数据库标准语言SQL的自主存取控制方法,注意:在SQL server2005中,使用GRANT语句还可以完成表1-2中所列举的各种对象权限的控制,课程中只介绍了GRANT 数据库权限的使用方法,11.1.3关系数据库标准语言SQL的自主存取控制方法,格式:REVOKE权限1,权限2 ON对象类型对象名 FROM用户1,用户2; 功能:把已经授予指定用户的指定权限收回。,11.1.3关系数据库标准语言SQL的自主存取控制方法,例7把用户user1修改读者姓名的权限收回。 REVOKE UPDATE(姓名)ON TABLE readers FROM userl; 例8 把用户user3查询readers表的权限收回。 REVOKE SELECT ON TABLE readers FROM user3;,11.1.3关系数据库标准语言SQL的自主存取控制方法,例7把用户user1修改读者姓名的权限收回。 REVOKE UPDATE(姓名)ON TABLE readers FROM userl; 例8 把用户user3查询readers表的权限收回。 REVOKE SELECT ON TABLE readers FROM user3;,11.2 SQL Server 的安全性机制,SQL Server 是如何保证数据库安全性的 ?,11.2 权限层次机制,操作系统级的安全性 在用户使用客户计算机通过网络实现SQL Server 服务器的访问时,用户首先要获得计算机操作系统的使用权。,11.2 权限层次机制,SQL Server 级的安全性 SQL Server 的服务器级安全性建立在控制服务器登录帐号和口令的基础上。SQL Server 采用了标准SQL Server 登录和集成Windows NT登录两种方式。,11.2 权限层次机制,数据库级的安全性 在用户通过SQL Server服务器的安全性检验以后,将直接面对不同的数据库入口这是用户将接受的第三次安全性检验。 在建立用户的登录帐号信息时,SQL Server会提示用户选择默认的数据库。 在默认的情况下只有数据库的拥有者才可以访问该数据库的对象,11.3登录和用户,1.3.1登录身份验证模式及其设置 1.3.2创建登录 1.3.3创建用户,11.3.1登录身份验证模式及其设置,用户的概念:数据库用户从概念上与操作系统用户是完全无关的 ,是为特定数据库定义的 登录的概念:用户连接到SQL Server 账户都称SQL Server 的登录,11.3.1登录身份验证模式及其设置,对于访问SQL Server的登录,有两种验证模式: Windows 身份验证中,SQL Server依赖于Windows操作系统提供登录安全性,SQL Server检验登录是否被Windows验证身份,并根据这一验证来允许访问 混合模式身份验证,SQL Server 将验证登录的身份,即通过用户提供的登录名和与预先存储在数据库中的登录名和密码进行比较来完成身份验证。,11.3.1登录身份验证模式及其设置,演示在SSMS中设置身份验证模式,11.3.2创建登录,登录属于服务器级的安全策略,要连接到数据库,首先要存在一个合法的登录 演示创建登录,11.3.3创建用户,用户是数据库级的安全策略,在为数据库创建新的用户前,必须存在创建用户的一个登录或者使用已经存在的登录创建用户。 演示创建用户,11.4权限管理,11.4.1服务器权限 11.4.2数据库对象权限 11.4.3数据库权限,11.4权限管理,权限用于控制对数据库对象的访问,以及指定用户对数据库可以执行的操作,用户可以设置服务器和数据库的权限。,11.4.1服务器权限,服务器权限允许数据库管理员执行任务。 这些权限定义在固定服务器角色(Fixed Server Roles)中。 这些固定服务器角色可以分配给登录用户,但这些角色是不能修改的。 一般只把服务器权限授给DBA(数据库管理员),他不需要修改或者授权给别的用户登录。,11.4.2数据库对象权限,数据库对象权限是授予用户以允许他们访问数据库中对象的一类权限,对象权限对于使用SQL语句访问表或者视图是必须的。 演示添加数据库对象权限,11.4.3数据库权限,SQL Server 2005对数据库权限进行了扩充,增加了许多新的权限,这些数据库权限除了授权用户可以创建数据库对象和进行数据库备份外,还增加了一些更改数据库对象的权限。 演示给用户添加数据库权限,11.5角色管理,11.5.1固定服务器角色 11.5.2数据库角色,11.5角色管理,在一个大的系统中,数据库管理员往往不只由一人承担,而是将管理任务进行功能划分,每人提当不同的责任。系统预定义角色就是为适应这种要求而设计的。,11.5角色管理,角色用来简化将很多权限分配给用户这一复杂任务的管理。 角色允许用户分组接受同样的数据库权限,而不用单独给每一个用户分配这些权限。 用户可以使用系统自带的角色,也可以创建一个代表一组用户使用的权限角色,然后把这个角色分配给这个工作组的用户。 一般而言,角色是为特定的工作组或者任务分类而设置的,用户可以根据自己所执行的任务成为一个或多个角色的成员。,11.5.1固定服务器角色,在SQL Server安装时就创建了在服务器级别上应用的大量预定义的角色,每个角色对应着相应的管理权限 所有的服务器角色都是“固定的”角色,11.5.1固定服务器角色,11.5.1固定服务器角色,11.5.1固定服务器角色,演示为用户分配固定服务器角色,从而使该用户获取相应的权限。,11.5.2数据库角色,在SQL Server安装时,数据库级别上也有一些预定义的角色,在创建每个数据库时都会添加这些角色到新创建的数据库中,每个角色对应着相应的权限。 数据库角色限制在单个数据库的范围之内 数据库角色分为两个子类:固定数据库角色和用户定义数据库角色。,11.5.2数据库角色,固定数据库角色,11.5.2数据库角色,11.5.2数据库角色,自定义数据库角色:可以为数据库添加角色,然后把角色分配给用户,使用户拥有相应的权限,在SSMS中,给用户添加角色(或者叫做将角色授权用户)的操作与将固定服务器角色授予用户的方法类似。 步骤如下: a.创建新的数据库角色。 b.分配权限给创建的角色。 c.将这个角色授予某个用户。,11.5.2数据库角色,演示创建新的数据库角色操作,11.6 其它安全设置,11.6.1 SA账户安全 11.6.2 选择身份认证 11.6.3管理扩展存储过程 11.6.4 使用加密功能 11.6.5 修改1433端口 11.6.6对远程网络连接进行IP限制 11.6.7启用C2审核跟踪,11.6.1 SA账户安全,SA账户安全:正在安装完SQL SERVER 2005之后,系统自带一个账户SA,为了防止黑客通过这个用户攻击数据库,通常要修改默认密码。 use master ALTER LOGIN sa WITH NAME=zxs /*修改SA帐号*/ sp_password 111111,123456,sa /*修改SA密码*/,11.6.2 选择身份认证,选择身份认证 :可以使用windows身份认证和混合身份认证 如果不希望系统管理员

温馨提示

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

评论

0/150

提交评论