chap6数据库的安全性

上传人:大米 文档编号:584535451 上传时间:2024-08-31 格式:PPT 页数:58 大小:599.52KB
返回 下载 相关 举报
chap6数据库的安全性_第1页
第1页 / 共58页
chap6数据库的安全性_第2页
第2页 / 共58页
chap6数据库的安全性_第3页
第3页 / 共58页
chap6数据库的安全性_第4页
第4页 / 共58页
chap6数据库的安全性_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《chap6数据库的安全性》由会员分享,可在线阅读,更多相关《chap6数据库的安全性(58页珍藏版)》请在金锄头文库上搜索。

1、第第6章章 数据库的安全性数据库的安全性WS-NE30-3-03 06-2北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有本章目标本章结束时,学员能够:本章结束时,学员能够:了解计算机系统的三类安全性了解可信计算机系统评测标准(TCSEC)及其级别划分了解数据库的安全性控制及其技术了解安全性控制机制掌握SQLSERVER2000安全架构掌握SQLSERVER2000安全管理了解SQLSERVER2000的审计WS-NE30-3-03 06-3北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.1计算机安全性概论计算机系统的三类安全

2、性问题可信计算机系统评测标准(TCSEC)WS-NE30-3-03 06-4北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.1计算机安全性概论(续)所谓计算机系统安全性,是指为计算机系统建立和采取的各种安全保护措施,以保护计算机系统中的硬件、软件及数据,防止其因偶然或恶意的原因使系统遭到破坏,数据遭到更改或泄露等。三类安全:技术安全类管理安全类政策法律类WS-NE30-3-03 06-5北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.1.1可信计算机系统评测标准(TCSEC)可信计算机系统评测标准可信计算机系统评测标准(T

3、CSEC):):美国国防部制定了TCSEC(可靠计算机系统评估标准,TrustedComputingSystemEvaluationCriteria,简称TCSEC),给出一套标准来定义满足特定安全等级所需的安全功能及其保证的程度。制定TCSEC标准的目的:1、提供一种标准,使用户可以对其计算机系统内敏感信息安全操作的可信程序做评估。2、给计算机行业的制造商提供一种可循的指导规则,使其产品能够更好地满足敏感应用的安全需求。WS-NE30-3-03 06-6北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.1.1可信计算机系统评测标准(续)TCSEC对系统安全等

4、级的划分:TCSEC 将计算机系统划分为四组七个等级,按系统可靠或可信程序逐渐增高排列,依次是:D、C1、C2、B1、B2、B3、A1WS-NE30-3-03 06-7北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2数据库安全性控制安全性控制定义安全性控制保护数据库以防止不合法的使用所造成的数据泄露和破坏。安全性措施物理级人际级操作系统级网络级数据库系统级WS-NE30-3-03 06-8北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2数据库安全性控制(续)与数据库有关的安全技术与数据库有关的安全技术 :身份认证身份认

5、证存取控制存取控制视图视图审计审计数据加密数据加密WS-NE30-3-03 06-9北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2.1身份认证用户标识和鉴别:用户标识和鉴别:是系统提供的最外层安全保障措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要求进入系统时,由系统进行核对,通过鉴定后才提供机器使用。常用的方法:常用的方法:用一个用户名或者用户标识号来标明用户身份口令WS-NE30-3-03 06-10北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2.2存取控制数据库安全最重要的一点就是确保

6、只授权给有资格的用户访问数据库的权限,同时令所有未被授权的人员无法接近数据,这主要通过数据库系统的存取控制机制实现存取控制机制主要包括两部分:定义用户权限合法权限检查当前大型DBMS支持的两个安全级别:C2级的DAC(自主存取控制)B1级的MAC(强制存取控制)WS-NE30-3-03 06-11北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2.3视图机制视图:视图:进行存取权限控制时为不同的用户定义的不同的数据对象范围。WS-NE30-3-03 06-12北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2.4审计审计:

7、审计:审计功能把用户对数据库的所有操作自动记录下来放入审记日志(AuditLog)中。DBA可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。WS-NE30-3-03 06-13北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.2.5数据加密数据加密:数据加密:是防止数据库中数据在存储和传输中失密的有效手段。加密的两种方法:加密的两种方法:替换方法转换方法WS-NE30-3-03 06-14北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3SQLServer2000安全构架WS-

8、NE30-3-03 06-15北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.1SQLServer的登录认证用户使用SQLServer要经过两个安全性阶段:身份验证授权(权限验证)WS-NE30-3-03 06-16北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.1SQLServer的登录认证(续)WS-NE30-3-03 06-17北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.1SQLServer的登录认证(续)身份验证模式比较:身份验证模式比较:Windows认证模式的

9、优点更先进的安全策略一组只需建一个用户更快捷的访问混合认证模式的优点非windows用户及Internet客户可以连接到数据库WS-NE30-3-03 06-18北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.2身份验证模式设置WS-NE30-3-03 06-19北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.3权限验证WS-NE30-3-03 06-20北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.3.3权限验证(续)两个默认登录帐户两个默认登录帐户:BUILTINAdmin

10、istratorsWINDOWSadministrators组成员默认使用此帐户登录Sa使用混合认证方式时,SQLSERVER的登录帐户WS-NE30-3-03 06-21北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4SQLServer安全管理管理管理SQL Server 登录登录数据库用户数据库用户WS-NE30-3-03 06-22北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.1管理管理SQL Server 登录登录新建登录WS-NE30-3-03 06-23北京清华万博网络技术股份有限公司版权所有北京清华万

11、博网络技术股份有限公司版权所有6.4.1管理管理SQL Server 登录登录新建登录(windows身份验证身份验证)单击此按钮,将弹出左边的对话框,在这里可以选择Windows系统中的用户设置默认数据库WS-NE30-3-03 06-24北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.1管理管理SQL Server 登录新建登录登录新建登录(SQLServer身份验证)SQLserver身份验证用户名设置默认数据库WS-NE30-3-03 06-25北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.1管理管理SQ

12、L Server 登录登录查看登录、修改登录(密码),拒绝、删除登录WS-NE30-3-03 06-26北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2数据库用户数据库用户简介数据库用户简介管理数据库用户管理数据库用户WS-NE30-3-03 06-27北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2.1数据库用户简介数据库用户简介数据库最高权限用户数据库最高权限用户-数据库所有者数据库所有者 (dbo):dbo是具有在数据库中执行所有活动的暗示性权限的用户sysadmin的任何成员都映射到dbo用户任何其他不

13、是sysadmin角色的成员创建的对象都不属于dboWS-NE30-3-03 06-28北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2.1数据库用户简介数据库用户简介(续)数据库特殊用户数据库特殊用户guest 用户用户:当满足下列所有条件时,登录采用guest用户的标识:登录有访问MicrosoftSQLServer实例的权限,但没有对应的用户帐户访问数据库的权限数据库中含有guest用户帐户可以在除master和tempdb外(在这两个数据库中它必须始终存在)的所有数据库中添加或删除guest用户。默认情况下,新建的数据库中没有guest用户帐户

14、WS-NE30-3-03 06-29北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2.1数据库用户简介数据库用户简介(续)数据库对象所有者数据库对象所有者:SQLServer查找对象的顺序为:o当前用户所拥有o为dbo所拥有如果找不到对象,返回错误信息WS-NE30-3-03 06-30北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2.2管理数据库用户管理数据库用户创建数据库用户指定对应登录帐户WS-NE30-3-03 06-31北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6

15、.4.2.2管理数据库用户管理数据库用户删除登录和用户删除用户和组时将自动删除为该用户定义的权限当某个用户当前拥有数据库对象时不能被删除删除用户不会自动删除登录,因此不会防止用户联接到SQLServer实例WS-NE30-3-03 06-32北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.4.2.2管理数据库用户管理数据库用户给数据库用户分配权限WS-NE30-3-03 06-33北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.5权限管理权限管理包括授予或废除活动的用户权限:处理数据和执行过程(对象权限)创建数据库或数据库

16、中的项目(语句权限)利用授予预定义角色的权限(暗示性权限)WS-NE30-3-03 06-34北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.5权限管理(续)GRANT:Can Perform ActionREVOKE:NeutralDENY:Cannot Perform ActionWS-NE30-3-03 06-35北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.5.1对象权限对象权限是指对象权限是指: :处理数据或执行过程时需要的权限.包括:SELECT、INSERT、UPDATE 和 DELETE 语句权限,它们可

17、以应用到整个表或视图中。SELECT 和 UPDATE 语句权限,它们可以有选择性地应用到表或视图中的单个列上。SELECT 权限,它们可以应用到用户定义函数。INSERT 和 DELETE 语句权限,它们会影响整行,因此只可以应用到表或视图中,而不能应用到单个列上。EXECUTE 语句权限,它们可以影响存储过程和函数。 WS-NE30-3-03 06-36北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.5.2语句权限创建数据库或数据库中的项(如表或存储过程)所涉及的活动要求另一类称为语句权限的权限。语句权限有:CREATEDATABASE创建数据库CREA

18、TETABLE创建表CREATEVIEW创建视图CREATERULE创建规则CREATEDEFAULT创建缺省CREATEPROCEDURE创建存储过程BACKUPDATABASE备份数据库BACKUPLOG备份事务日志WS-NE30-3-03 06-37北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.5.3暗示性权限暗示性权限控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。例如,sysadmin固定服务器角色成员自动继承在SQLServer安装中进行操作或查看的全部权限。数据库对象所有者还有暗示性权限,可以对所拥有的对象执行一切活动。例如,

19、拥有表的用户可以查看、添加或删除数据,更改表定义,或控制允许其他用户对表进行操作的权限。WS-NE30-3-03 06-38北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有权限管理小结预定义预定义预定义预定义Fixed RoleObject Owner对象对象对象对象SELECT INSERTUPDATEDELETEREFERENCESSELECT UPDATEREFERENCESEXECTABLEVIEWCOLUMNSTORED PROCEDURE语句语句语句语句CREATE DATABASECREATE TABLECREATE VIEWCREATE PROC

20、EDURECREATE RULECREATE DEFAULTCREATE FUNCTIONBACKUP DATABASEBACKUP LOGWS-NE30-3-03 06-39北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.6角色管理使用数据库角色的好处:对于任何用户,都可以随时让多个数据库角色处于活动状态如果所有用户、组和角色都在当前数据库中,则SQLServer角色可以包含WindowsNT4.0或Windows2000组和用户,以及SQLServer用户和其它角色在同一数据库中,一个用户可属于多个角色提供了可伸缩模型以便在数据库中设置正确的安全级别WS

21、-NE30-3-03 06-40北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.6.1角色概述MicrosoftSQLServer中的安全机制包括几个具有暗示性权限的预定义角色,两类预定义角色为:固定服务器角色固定数据库角色WS-NE30-3-03 06-41北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.6.1 角色概述(续)固定服务器角色固定服务器角色Sysadmin在SQLServer中进行任何活动。该角色的权限跨越所有其它固定服务器角色。Serveradmin配置服务器范围的设置。Setupadmin添加和删除链接

22、服务器,并执行某些系统存储过程(如sp_serveroption)Securityadmin 管理服务器登录。Processadmin 管理在SQLServer实例中运行的进程。Dbcreator创建和改变数据库。Diskadmin管理磁盘文件。Bulkadmin执行BULKINSERT语句。WS-NE30-3-03 06-42北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.6.1 角色概述(续)固定固定数据库角色数据库角色db_owner进行所有数据库角色的活动,以及数据库中的其它维护和配置活动。该角色的权限跨越所有其它固定数据库角色。db_accessa

23、dmin在数据库中添加或删除WindowsNT4.0或Windows2000组和用户以及SQLServer用户。db_datareader查看来自数据库中所有用户表的全部数据。db_datawriter添加、更改或删除来自数据库中所有用户表的数据。db_ddladmin添加、修改或除去数据库中的对象。db_securityadmin管理SQLServer2000数据库角色的角色和成员,并管理数据库中的语句和对象权限。db_backupoperator有备份数据库的权限。db_denydatareader拒绝选择数据库数据的权限。db_denydatawriter拒绝更改数据库数据的权限。WS-

24、NE30-3-03 06-43北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.6.2角色的管理:新建数据库角色(续)WS-NE30-3-03 06-44北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.7SQLServer安全性管理的途径使用视图作为安全机制视图与权限结合使用存储过程作为安全机制WS-NE30-3-03 06-45北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.7.1.1使用行级、列级安全性的视图例:在该例中某一销售点只能查看他自己的销售信息,使用pubs 数据库中的sal

25、es 表:首先创建视图create view specificsale asselect ord_num ord_date qty payterms title_idfrom saleswhere stor_id=7067当执行以下语句时select * from specificsale 则只显示他自己的销售信息WS-NE30-3-03 06-46北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.7.1.2视图与权限结合通过定义不同的视图及有选择地授予视图上的权限,可以将用户、组或角色限制在不同的数据子集内。例如:1.可以将访问限制在基表中行的子集内。例如,

26、可以定义一个视图,其中只含有商业书籍或心理书籍的行,并向用户隐藏有关其它类型书籍的信息。2.可以将访问限制在基表中列的子集内。例如,可以定义一个视图,其中含有 titles 表中的所有行,但省略了 royalty 和 advance 列,因为这些信息比较敏感。3.可以将访问限制在基表中列和行的子集内。4.可以将访问限制在符合多个基表联接的行内。例如,可以定义一个视图,它联接表 titles、authors 和 titleauthor 表以显示作者姓名及其撰写的书籍。该视图隐藏作者的个人信息以及著作的财务信息。5.可以将访问限制在基表中数据的统计汇总内。例如,可以定义一个视图,其中只含有每类书籍

27、的平均价格。6.可以将访问限制在另一个视图的子集内或视图和基表组合的子集内。 WS-NE30-3-03 06-47北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.7.2使用存储过程作为安全机制存储过程是Transact-SQL 语句的预编译集合,这些语句在一个名称下存储并作为一个单元进行处理。如果用户不具有访问视图和表的权限,那么通过存储过程仍能够让其查询相应的数据信息。实现的方法很简单,只要让该用户具有存储过程的EXEC 权限就可以了。要确保该存储过程中包含了查询语句,比如可创建下面的存储过程create procedure selsales assele

28、ct * from sales然后将存储过程的EXEC 权限授予用户当用户,执行该存储过程时就可以查看到相应信息。使用存储过程的优点在于不必对视图和表的访问权限进行分配。WS-NE30-3-03 06-48北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8使用SQL事件探查器进行监视监视SQLServer实例的性能调试Transact-SQL语句和存储过程识别执行慢的查询在工程开发阶段,通过单步执行语句测试SQL语句和存储过程,以确认代码按预期运行通过捕获生产系统中的事件并在测试系统中重播它们来解决SQLServer中的问题审核和复查在SQLServer实例

29、中发生的活动WS-NE30-3-03 06-49北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.1启动SQL事件探查器WS-NE30-3-03 06-50北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.2使用SQL事件探查器方案通常情况下,使用SQL事件探查器可以:查找执行最差的查询识别死锁原因监视存储过程的性能审核MicrosoftSQLServer活动监视每个用户的Transact-SQL活动WS-NE30-3-03 06-51北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.

30、8.3创建跟踪示例从这里创建新的跟踪WS-NE30-3-03 06-52北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.3创建跟踪示例(续)跟踪属性对话框WS-NE30-3-03 06-53北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.3创建跟踪示例(续)属性(事件选项卡)WS-NE30-3-03 06-54北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.3创建跟踪示例(续)属性(数据列选项卡)WS-NE30-3-03 06-55北京清华万博网络技术股份有限公司版权所有北京

31、清华万博网络技术股份有限公司版权所有6.8.3创建跟踪示例(续)属性(筛选器选项卡)WS-NE30-3-03 06-56北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.3创建跟踪示例(续)WS-NE30-3-03 06-57北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有6.8.4SQL事件探查器性能考虑在使用SQL事件探查器的时候也要适当考虑性能方面的问题,如果跟踪的开销太大则应当适当调整跟踪策略,主要的性能降低由以下原因产生:运行的跟踪过多管理大跟踪文件WS-NE30-3-03 06-58北京清华万博网络技术股份有限公司版权所有北京清华万博网络技术股份有限公司版权所有本章总结计算机系统的三类安全性可信计算机系统评测标准(TCSEC)及其级别划分数据库的安全性控制及其技术安全性控制机制的功能SQLSERVER2000安全架构SQLSERVER2000安全管理SQLSERVER2000中的角色SQLSERVER2000安全策略SQLSERVER2000事件探查器的使用

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号