数据库的安全性_第1页
数据库的安全性_第2页
数据库的安全性_第3页
数据库的安全性_第4页
数据库的安全性_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

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

文档简介

1、数据库的平安性数据库的平安性 数据库的平安性:指保护数据库以防止不合法的使用造成数据泄露、更改或破坏。 数据库的平安性和计算机系统的平安性,包括操作系统、网络系统的平安性是紧密联系、相互支持的。 指为计算机系统建立和采取的各种平安保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。 n计算机系统的平安性分为:n 1技术平安类n 2管理平安类n 3政策法律类 制定标准的目的: (1)提供一种标准,使用户可以对其计算机系统内敏感信息平安操作的可信程度进行评估。 (2)给计算机行业的制造商提供一种可循的指导规那么,使其产品能够更好地满足敏感应

2、用的平安需求。信息平安开展的历史:信息平安开展的历史:P132 图图4.11991年4月美国国家计算机平安中心发布了?可信计算机系统评估标准关于可信数据库系统的解释简称TDI,将TCSEC (美国国防部Trusted Computer Systems Evaluation Criteria)扩展到数据库管理系统。 TDI中定义了数据库管理系统的设计与实现中需满足和用以进行平安级别评估的标准。TDI从四个方面描述平安性级别划分的指标:从四个方面描述平安性级别划分的指标: 1平安策略平安策略 2责任责任 3保证保证 4文档文档 每个方面又细分为假设干项。每个方面又细分为假设干项。n平安等级的划分n

3、根据计算机系统对上述各项指标的支持情况,TDl将系统划分为四组七个等级:n Dn C(Cl,C2)n B(B1,B2,B3)n A(A1),n 按系统可靠或可信程度逐渐增高,n P132 10nITSECnInformation Technology Security Evaluation Criterian英法德荷四国制定英法德荷四国制定n是欧洲多国平安评价方法的综合产物,应用领域为军队、政府和商业。是欧洲多国平安评价方法的综合产物,应用领域为军队、政府和商业。该标准将平安概念分为功能与评估两局部。功能准那么从该标准将平安概念分为功能与评估两局部。功能准那么从F1F10共分共分10级。级。

4、15级对应于级对应于TCSEC的的D到到A。F6至至F10级分别对应数据和程级分别对应数据和程序的完整性、系统的可用性、数据通信的完整性、数据通信的保密性以序的完整性、系统的可用性、数据通信的完整性、数据通信的保密性以及机密性和完整性。及机密性和完整性。n与与TCSEC不同不同,它并不把保密措施直接与计算机功能相联系它并不把保密措施直接与计算机功能相联系,而是只表达而是只表达技术平安的要求技术平安的要求,把保密作为平安增强功能。另外把保密作为平安增强功能。另外,TCSEC把保密作为平把保密作为平安的重点安的重点,而而ITSEC那么把完整性、可用性与保密性作为同等重要的因那么把完整性、可用性与保

5、密性作为同等重要的因素。素。ITSEC定义了从定义了从E0级级(不满足品质不满足品质)到到E6级级(形式化验证形式化验证)的的7个平安个平安等级等级,对于每个系统对于每个系统,平安功能可分别定义。平安功能可分别定义。11n美英法德荷加六国制定的共同标准美英法德荷加六国制定的共同标准n包含的类包含的类nFAU平安审计平安审计nFCO通信通信nFCS密码支持密码支持nFDP用户数据保护用户数据保护nFIA标识与鉴别标识与鉴别nFMT平安管理平安管理nFPR隐私隐私nFPTTSF保护保护(固件保护,固件保护,TOE Security Functions, TOE Security Policy,(T

6、arget Of Evaluation)nFRU资源利用资源利用nFTATOE访问访问nFTP可信信道可信信道/路径路径12nCC分为三个局部:分为三个局部:n第第1局部局部简介和一般模型简介和一般模型,正文介绍了,正文介绍了CC中的有关术语中的有关术语、根本概念和一般模型以及与评估有关的一些框架,附录、根本概念和一般模型以及与评估有关的一些框架,附录局部主要介绍保护轮廓局部主要介绍保护轮廓PP和平安目标和平安目标ST的根本内的根本内容。容。n第第2局部局部平安功能要求平安功能要求,按,按类类-子类子类-组件组件的方式提出的方式提出平安功能要求,每一个类除正文以外,还有对应的提示性平安功能要求

7、,每一个类除正文以外,还有对应的提示性附录作进一步解释。附录作进一步解释。n第第3局部局部“平安保证要求,定义了评估保证级别,介绍了平安保证要求,定义了评估保证级别,介绍了PP和和ST的评估,并按的评估,并按“类类-子类子类-组件的方式提出平安组件的方式提出平安保证要求保证要求13nCC的三个局部相互依存,缺一不可。的三个局部相互依存,缺一不可。n第第1局部是介绍局部是介绍CC的根本概念和根本原理的根本概念和根本原理n第第2局部提出了技术要求局部提出了技术要求n第第3局部提出了非技术要求和对开发过程、工程过程的局部提出了非技术要求和对开发过程、工程过程的要求。要求。n这三局部的有机结合具体表达

8、在这三局部的有机结合具体表达在PP和和ST 中,中,PP和和ST的概念和原理由第的概念和原理由第1局部介绍,局部介绍,PP和和ST中的平安功能中的平安功能要求和平安保证要求在第要求和平安保证要求在第2、3局部选取,这些平安要局部选取,这些平安要求的完备性和一致性,由第求的完备性和一致性,由第2、3两局部来保证。两局部来保证。nCC 作为评估信息技术产品和系统平安性的世界性通用作为评估信息技术产品和系统平安性的世界性通用准那么,是信息技术平安性评估结果国际互认的根底准那么,是信息技术平安性评估结果国际互认的根底。14CCTCSECITSEC-DE0EAL1-EAL2C1E1EAL3C2E2EAL

9、4B1E3EAL5B2E4EAL6B3E5EAL7A1E6在一般计算机系统中,平安措施是一级一级层在一般计算机系统中,平安措施是一级一级层层设置的。层设置的。 P135用户标识与鉴别用户标识与鉴别用户标识和鉴别是系统提供的最外层平安保护用户标识和鉴别是系统提供的最外层平安保护措施。措施。 其方法是由系统提供一定的方式让用户其方法是由系统提供一定的方式让用户标识自己的名字或身份,每次用户要求进入标识自己的名字或身份,每次用户要求进入系统时,由系统进行核对,通过鉴定后才提系统时,由系统进行核对,通过鉴定后才提供机器使用权。供机器使用权。1用户名+口令2更复杂的方法 例:每个用户都预先约定好一个函数

10、,鉴别用户身份时,系统提供一个随机数,用户根据自己预先约定的函数进行计算,系统根据计算结果是否正确进一步鉴定用户身份。 数据库平安最重要的一点:确保只授权给有资格的用户访问数据库,主要通过数据库系统的存取控制机制实现。 存取控制机制主要包括两局部: 1定义用户权限,系统必须提供适当的语言定义用户权限,这些定义经过编译后存放在数据字典中,被称为平安规那么或授权规那么。 用户权限:指不同的用户对于不同的数据对象允许执行的操作权限。 2合法权限检查,用户发出存取数据库的操作请求后,合法权限检查,用户发出存取数据库的操作请求后, DBMS查找数据字典,根据平安规那么进行合法权限检查,查找数据字典,根据

11、平安规那么进行合法权限检查,假设用户的操作请求超出了定义的权限,系统拒绝执行此操假设用户的操作请求超出了定义的权限,系统拒绝执行此操作。作。 用户权限定义和合法权检查机制一起组成了用户权限定义和合法权检查机制一起组成了DBMS的平的平安子系统。安子系统。 自主存取控制方法:自主存取控制方法:Discretionary Access Control 1用户对于不同的数据对象有不同的存取权限;用户对于不同的数据对象有不同的存取权限; 2不同的用户对同一对象也有不同的权限,而且用户还可将其拥不同的用户对同一对象也有不同的权限,而且用户还可将其拥有的存取权限转授给其他用户。有的存取权限转授给其他用户。

12、 大型数据库管理系统几乎都支持自主存取控制,目前的大型数据库管理系统几乎都支持自主存取控制,目前的SQL标准标准也对自主存取控制提供支持。也对自主存取控制提供支持。通过通过SQL的的GRANT语句和语句和REVOKE语句实现。语句实现。 P137 表表4.3 RDB中的存取权限中的存取权限 1. 数据库用户的操作权限数据库用户的操作权限在在SQL Server中,可授予数据库用户的权限分为三中,可授予数据库用户的权限分为三个层次:个层次:1在当前数据库中创立数据库对象及进行数据在当前数据库中创立数据库对象及进行数据库备份的权限库备份的权限主要有:主要有:创立表、视图、存储过程、规那么、缺省值对

13、象、创立表、视图、存储过程、规那么、缺省值对象、函数的权限及备份数据库、日志文件的权限。函数的权限及备份数据库、日志文件的权限。2用户对数据库表的操作权限及执行存储过程的权限用户对数据库表的操作权限及执行存储过程的权限主要有:主要有:SELECT:对表或视图执行:对表或视图执行 SELECT 语句的权限;语句的权限;INSERT:对表或视图执行:对表或视图执行 INSERT 语句的权限;语句的权限;UPDATE:对表或视图执行:对表或视图执行 UPDATE 语句的权限;语句的权限;DELETE:对表或视图只:对表或视图只 DELETE 语句的权限;语句的权限;REFERENCES:用户对表的主

14、键和唯一索引字段生成外码:用户对表的主键和唯一索引字段生成外码引用的权限;引用的权限;EXECUTE:执行存储过程的权限。:执行存储过程的权限。(3) 用户对数据库中指定表字段的操作权限用户对数据库中指定表字段的操作权限 主要有:主要有: SELECT:对表字段进行查询操作的权限;:对表字段进行查询操作的权限; UPDATE、DELETE、INSERT:对表字:对表字段进行更新操作的权限段进行更新操作的权限 2. 书上的语法形式及例子:书上的语法形式及例子:P137 GRANT 权限权限, ON TO 用户或数据库角色用户或数据库角色, WITH GRANT OPTION注意:必须以适宜的身份

15、登录,才能执行以注意:必须以适宜的身份登录,才能执行以上语句。上语句。收回权限 P139书上的语句形式:书上的语句形式: REVOKE 权限权限, ON FROM 用户用户角色角色1, ,用户,用户角色角色 n1.SQL Server的身份认证模式的身份认证模式身份认证模式身份认证模式 指系统确认用户的方式。指系统确认用户的方式。 有两种方式:有两种方式: 1Windows NT认证模式认证模式 必须将必须将NT网络帐号参加网络帐号参加SQL Server中,才能中,才能采用此方式。采用此方式。 2 SQL Server认证模式认证模式 在在SQL Server认证模式下,认证模式下, SQL

16、 Server效劳效劳器要对登录的用户进行身份认证。器要对登录的用户进行身份认证。 2.SQL Server的平安管理的平安管理 用户如何才能使用数据库?用户如何才能使用数据库? SQL Server系统登录帐号系统登录帐号 某个数据库用户或用户组数据库角色某个数据库用户或用户组数据库角色中的成员中的成员 具有对数据库中数据进行操作的权限。具有对数据库中数据进行操作的权限。例:例:1创立登录帐号创立登录帐号/利用系统存储过程利用系统存储过程sp_addlogin创立登录创立登录帐号,帐号,ID:wang,密码:,密码: dongdong,缺省数据库,缺省数据库student。exec sp_a

17、ddlogin wang,dongdong,studentGo界面方式创立登录?界面方式创立登录?注意注意sp_addlogin与与sp_grantlogin的区的区别。别。sp_grantlogin用于建立用于建立SQL Server与与windows帐号的信任关系。帐号的信任关系。exp:Exec sp_grantlogin Nanjingchengfang建立与建立与windows帐号的信任关系。帐号的信任关系。windows帐号格式:帐号格式:“域域用户名用户名2创立数据库用户创立数据库用户/为登录帐号为登录帐号 wang创立数据库用户,其名为创立数据库用户,其名为wan。use st

18、udentexec sp_grantdbaccess wang,wan(3)给数据库用户赋予操作权限给数据库用户赋予操作权限/给给wan用户授予对表用户授予对表student 的的select权限。权限。 use student grant select on student to wan问题:问题: 如果要创立数据库用户,并对该用户赋如果要创立数据库用户,并对该用户赋予权限,必须以何种身份登录?予权限,必须以何种身份登录?3.效劳器角色与数据库角色效劳器角色与数据库角色 角色是被赋予一定权限的组。一个用户如角色是被赋予一定权限的组。一个用户如果为某角色的成员,那么该用户具有该角色的果为某角色

19、的成员,那么该用户具有该角色的所有权限。所有权限。 SQL Server给用户提供两类预定义的角色:给用户提供两类预定义的角色: 1效劳器角色效劳器角色-固定效劳器角色固定效劳器角色 2数据库角色数据库角色-固定数据库角色固定数据库角色 一个角色可有一个或假设干个成员,同一角一个角色可有一个或假设干个成员,同一角色的成员有相同的权限。色的成员有相同的权限。 固定效劳器角色和固定数据库角色固定效劳器角色和固定数据库角色都是都是SQL Server内置的,不能进行添加、内置的,不能进行添加、修改和删除。修改和删除。 用户也可根据需要,创立自己的数据用户也可根据需要,创立自己的数据库角色,以便对具有

20、同样操作权限的用库角色,以便对具有同样操作权限的用户进行统一管理。户进行统一管理。4.固定效劳器角色:固定效劳器角色:sysadmin:系统管理员,可对:系统管理员,可对SQL Server效劳器进行所有效劳器进行所有的管理工作,为最高管理角色。的管理工作,为最高管理角色。securityadmin:平安管理员,可以管理登录和:平安管理员,可以管理登录和 CREATE DATABASE 权限,还可以读取错误日志和更改密码。权限,还可以读取错误日志和更改密码。serveradmin:效劳器管理员,具有对效劳器进行设置及关:效劳器管理员,具有对效劳器进行设置及关闭效劳器的权限。闭效劳器的权限。se

21、tupadmin:设置管理员,添加和删除链接效劳器,并执:设置管理员,添加和删除链接效劳器,并执行某些系统存储过程如行某些系统存储过程如 sp_cessadmin:进程管理员,可以管理磁盘文件。:进程管理员,可以管理磁盘文件。dbcreator:数据库创立者,可以创立、更:数据库创立者,可以创立、更改和删除数据库。改和删除数据库。bulkadmin:可执行:可执行BULK INSERT语句,语句,但是这些成员对要插入数据的表必须有但是这些成员对要插入数据的表必须有INSERT权限。权限。BULK INSERT语句的功能是以用户指定语句的功能是以用户指定的格式复制

22、一个数据文件至数据库表或的格式复制一个数据文件至数据库表或视图。视图。给效劳器角色添加成员给效劳器角色添加成员 use stexec sp_addsrvrolemember wang,sysadmin/ wang为登录帐号为登录帐号5.固定数据库角色固定数据库角色 db_owner:数据库所有者,可执行数据库的所:数据库所有者,可执行数据库的所有管理操作。有管理操作。SQL Server 数据库中的每个对象都有所有者,通常数据库中的每个对象都有所有者,通常创立该对象的用户即为其所有者。其他用户只有创立该对象的用户即为其所有者。其他用户只有在相应所有者对其授权后,方可访问该对象。在相应所有者对其

23、授权后,方可访问该对象。用户发出的所有用户发出的所有SQL语句均受限于该用户具有的权语句均受限于该用户具有的权限。例如,限。例如,CREATE DATABASE仅限于仅限于 sysadmin 和和 dbcreator 固定效劳器角色的成员使用。固定效劳器角色的成员使用。sysadmin 固定效劳器角色的成员、固定效劳器角色的成员、 固定数据库角固定数据库角色的成员以及数据库对象的所有者色的成员以及数据库对象的所有者db_owner都可都可授予、或收回某个用户或某个角色的权限。授予、或收回某个用户或某个角色的权限。db_accessadmin:数据库访问权限管理者,具有添:数据库访问权限管理者,

24、具有添加、删除数据库使用者、数据库角色和组的权限。加、删除数据库使用者、数据库角色和组的权限。db_securityadmin:数据库平安管理员,可管理数:数据库平安管理员,可管理数据库中的权限,如设置数据库表的增、删、改和据库中的权限,如设置数据库表的增、删、改和查询等存取权限。查询等存取权限。db_ddladmin:数据库数据库DDL管理员,可增加、管理员,可增加、修改或删除数据库中的对象。修改或删除数据库中的对象。db_backupoperator:数据库备份操作员,数据库备份操作员,具有执行数据库备份的权限。具有执行数据库备份的权限。db_datareader:数据库数据读取者。数据库

25、数据读取者。db_datawriter:数据库数据写入者,具有对数据库数据写入者,具有对表进行增、删、改的权限。表进行增、删、改的权限。db_denydatareader:数据库拒绝数据读取者,不:数据库拒绝数据读取者,不能读取数据库中任何表的内容能读取数据库中任何表的内容db_denydatawriter:数据库拒绝数据写入者,不能数据库拒绝数据写入者,不能对任何表进行增、删、改操作。对任何表进行增、删、改操作。 public:是一个特殊的数据库角色,每个数据库是一个特殊的数据库角色,每个数据库用户都是用户都是public 角色的成员。角色的成员。 不能将用户、组或角色指派为不能将用户、组或

26、角色指派为public角色的角色的成员,也不能删除成员,也不能删除public角色的成员。角色的成员。 通常将一些公共的权限赋给通常将一些公共的权限赋给public角色。角色。6.用户自定义数据库角色用户自定义数据库角色 P142 /*创立数据库角色创立数据库角色ROLE1*/ USE stEXEC sp_addrole ROLE1 使一数据库用户成为某个数据库角色的成员使一数据库用户成为某个数据库角色的成员 USE stEXEC sp_addrolemember ROLE1, wan1SQL Server: 给数据库用户或数据库角色赋予执行给数据库用户或数据库角色赋予执行DDL语句语句的权限

27、。的权限。 语法格式:语法格式:GRANT ALL | statement ,.n TO security_account ,.n / security_account 为角色名或用户名。为角色名或用户名。statement可为:可为:CREATE DATABASE、CREATE TABLE、CREATE VIEW、CREATE FUNCTION、CREATE PROCEDURE、CREATE RULE、CREATE DEFAULT、BACKUP DATABASE、BACKUP LOG 例:例: use st grant create table to wan1SQL Server授予对数据库

28、对象操作的权限授予对数据库对象操作的权限 :P137GRANT ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) TO security_account ,.n WITH GRANT OPTION permission :select,insert,update,deleteuse studentgrant select (sno,sname ) on student to wangrant create table to wanWITH GRANT O

29、PTION:指获得某一权限的用户可将:指获得某一权限的用户可将此权限转授给其它的用户,否那么不能传播。此权限转授给其它的用户,否那么不能传播。问题:对数据库问题:对数据库student的用户的用户wan赋予对赋予对student表的插表的插入、删除、更新权限,并允许入、删除、更新权限,并允许wan将该权限转授给其将该权限转授给其他用户。他用户。例:例: use studentgrant select,insert,update,deleteon studentto wan1with grant option例:例:USE studentGOGRANT SELECT ON student(sno

30、,sname) TO public利用利用REVOKE命令可取消以前给用户授予命令可取消以前给用户授予的执行的执行DDL语句的权限。语句的权限。语法格式:语法格式:REVOKE ALL | statement ,.n FROM security_account ,.n 功能:功能:取消以前授予的执行语句权限。取消以前授予的执行语句权限。security_account为用户名或角色名。为用户名或角色名。REVOKE ALL PRIVILEGES | permission ,.n ( column ,.n ) ON table | view | ON table | view ( column ,.n ) TO | FROM security_account ,.n CASCADE 例:例: use student revoke se

温馨提示

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

评论

0/150

提交评论