ImageVerifierCode 换一换
格式:PPT , 页数:33 ,大小:2.25MB ,
资源ID:10025520      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-10025520.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Sql_Server安全性及安全管理.ppt)为本站会员(hwpkd79526)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Sql_Server安全性及安全管理.ppt

1、,SQL Server 安全性及安全管理,Contents,数据库安全性控制的一般方法,SQL Server 安全体系结构,数据库死锁解决方法,数据库安全性控制的一般方法,数据库的安全性是指保护数据库,以防止不合法的使用造成的数据泄密、更改或破坏。数据库管理系统安全性保护,就是通过种种防范措施以防止用户越权使用数据库。安全保护措施是否有效是衡量数据库系统的主要性能指标之一。,安全性级别数据库的完整性尽可能的避免对数据库的无意滥用。数据库的安全性尽可能避免对数据库的恶意滥用。为了防止数据库的恶意滥用,可以在下述不同的安全级别上设置各种安全措施。(1)环境级:对计算机系统的机房和设备加以保护,防止

2、物理破坏。(2)职员级:对数据库系统工作人员,加强劳动纪律和职业道德教育,并正确的授予其访问数据库的权限。(3)操作系统级:防止未经授权用户从操作系统层着手访问数据库。(4)网络级:由于数据库系统允许用户通过网络访问,因此,网络软件内部的安全性对数据库的安全是很重要的。(5)数据库系统级:检验用户的身份是否合法,检验用户数据库操作权限是否正确。,数据库安全性控制的一般方法,数据库安全控制的一般方法数据库系统中一般采用用户标识和鉴别、存取控制、视图以及密码存储等技术进行安全控制。 标识与鉴别 用户标识和鉴别是DBMS提供的最外层保护措施。用户每次登录数据库时都要输入用户标识,DBMS进行核对后,

3、对于合法的用户获得进入系统最外层的权限。用户标识和鉴别的方法很多,常用的方法有: 身份(Identification)认证用户的身份,是系统管理员为用户定义的用户名(也称为用户标识、用户账号、用户ID),并记录在计算机系统或DBMS中。身份认证,是指系统对输入的用户名与合法用户名对照,鉴别此用户是否为合法用户。若是,则可以进入下一步的核实;否则,不能使用系统。,数据库安全性控制的一般方法,口令(Password)认证用户的口令,是合法用户自己定义的密码。为保密起见,口令由合法用户自己定义并可以随时变更。口令认证是为了进一步对用户核实。通常系统要求用户输入口令,只有口令正确才能进入系统。 随机数

4、运算认证随机数认证实际上是非固定口令的认证,即用户的口令每次都是不同的。鉴别时系统提供一个随机数,用户根据预先约定的计算过程或计算函数进行计算,并将计算结果输送到计算机,系统根据用户计算结果判定用户是否合法。例如算法为:“口令=随机数平方的后三位”,出现的随机数是36,则口令是296。,数据库安全性控制的一般方法,存取控制(授权机制)DBMS的存取控制机制是数据库安全的一个重要保证,它确保具有数据库使用权限的用户访问数据库并进行权限范围内的操作,同时令未被授权的用户无法接近数据。 存取机制的构成 存取控制机制主要包括两部分: 定义用户权限用户权限是指用户对于数据对象能够进行的操作种类。要进行用

5、户权限定义,DBMS必须提供有关定义用户权限的语言,该语言称为数据控制语言DCL。 进行权限检查每当用户发出存取数据库的操作请求后,DBMS首先查找数据字典,进行合法权限检查。如果用户的操作请求没有超出其数据操作权限,则准予执行其数据操作;否则,DBMS将拒绝执行此操作。,数据库安全性控制的一般方法,存取机制的类别在自主存取控制方法中,用户对于不同的数据对象可以有不同的存取权限,不同的用户对同一数据对象的存取权限也可以各不相同,用户还可以将自己拥有的存取权限转授给其他用户。在强制存取控制方法中,每一个数据对象被标以一定的密级;每一个用户也被授予某一个级别的许可证。对于任意一个对象,只有具有合法

6、许可证的用户才可以存取。显然,自主存取控制比较灵活,强制存取控制比较严格。,数据库安全性控制的一般方法,视图机制进行存取权限的控制,不仅可以通过授权来实现,而且还可以通过定义用户的外模式来提供一定的安全保护功能。在关系数据库中,可以为不同的用户定义不同的视图,通过视图机制把要保密的数据对无权操作的用户隐藏起来,从而自动地对数据提供一定程度的安全保护。对视图也可以进行授权。视图机制使系统具有数据安全性、数据逻辑独立性和操作简便等优点。,数据库安全性控制的一般方法,审计方法审计功能就是把用户对数据库的所有操作自动记录下来放入审计日志(Audit Log)中,一旦发生数据被非法存取,DBA可以利用审

7、计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、时间和内容等。由于任何系统的安全保护措施都不可能无懈可击,蓄意盗窃、破坏数据的人总是想方设法打破控制,因此审计功能在维护数据安全、打击犯罪方面是非常有效的。由于审计通常是很费时间和空间的,因此DBA要根据应用对安全性的要求,灵活打开或关闭审计功能。,数据库安全性控制的一般方法,数据加密对高度敏感数据(例如财务、军事、国家机密等数据),除了以上安全性措施外,还应该采用数据加密技术。数据加密是防止数据在存储和传输中失密的有效手段。加密的基本思想是根据一定的算法将原始数据(称为明文)变换为不可直接识别的格式(称为密文),从而使得

8、不知道解密算法的人无法获得数据的内容。加密方法主要有两种:替换方法使用密钥将明文中的每一个字符转换为密文中的字符。置换方法将明文的字符按不同的顺序重新排列。单独使用这两种方法的任意一种都是不够安全的。但是将这两种方法结合起来就能达到相当高的安全程度。,SQL标准对自主存取控制提供了支持,其DCL主要是GRANT(授权)语句和REVOKE(收权)语句。 关系中的用户权限用户权限主要包括数据对象和操作类型两个要素。定义用户的存取权限称为授权。表9-1 不同类型数据对象的操作权限,数据库安全性控制的一般方法,SQL Server 安全体系结构,SQL Server 2000的安全体系结构 SQL S

9、erver 2000提供以下4层安全防线: 操作系统的安全防线Windows(Windiws NT或Windows 2000 Server等) 网络管理员负责建立用户组,设置账号并注册,同时决定不同用户对不同系统资源的访问级别。 SQL Server的运行安全防线 SQL Server通过登录账号设置来创建附加安全层。用户只有登录成功,才能与SQL Server建立一次连接。 SQL Server数据库的安全防线SQL Server的特定数据库都有自己的用户和角色,该数据库只能由它的用户或角色访问,其他用户无权访问其数据。 SQL Server数据库对象的安全防线 SQL Server可以对权

10、限进行管理。保证合法用户即使进入了数据库也不能有超越权限的数据存取操作,即合法用户必须在自己的权限范围内进行数据操作。,SQL Server 安全体系结构,SQL Server 2000的安全认证模式SQL Server 2000的安全认证模式安全认证是指数据库系统对用户访问数据库系统时所输入的账号和口 令进行确认的过程。安全性认证模式是指系统确认用户身份的方式。SQL Server 2000有 两种安全认证模式,即Windows安全认证模式和SQL Server安全认证模式。 Windows安全认证模式Windows安全认证模式是指SQL Server服务器通过使用Windows网络用户的安

11、全性来控制用户对SQL Server服务器的登录访问。 SQL Server的安全认证模式SQL Server安全认证模式要求用户必须输入有效的SQL Server登录账号及口令。这个登录账号是独立于操作系统的登录账号的,从而可以在一定程度上避免操作系统层上对数据库的非法访问。,SQL Server 安全体系结构,设置SQL Server 2000的安全认证模式使用SQL Server 2000企业管理器功能选择需要的安全认证模式,其步骤如下:1)在企业管理器中扩展开SQL服务器组,右击需要设置的SQL服务器,在弹出的菜单中选择【编辑SQL Server注册属性】命令。2)在弹出的“已注册的S

12、QL Server属性” 对话框(见图9-1)的【连接】区域有身份验证的两个单选框。单击【使用Windows身份验证W 】为选择集成安全认证模式;单击【使用SQL Server身份验证Q 】则为选择SQL Server 2000安全认证模式。,SQL Server 安全体系结构,编辑已注册的SQL Server属性对话框,SQL Server 安全体系结构,SQL Server的安全性管理包括以下几个方面:数据库系统登录管理、数据库用户管理、数据库系统角色管理以及数据库访问权限的管理。 数据库系统登录管理 登录账号登录账号也称为登录用户或登录名,是服务器级用户访问数据库系统的标识。为了访问SQ

13、L Server系统,用户必须提供正确的登录账号,这些登录账号既可以是Windows登录账号,也可以是SQL Server登录账号。,SQL Server 安全体系结构,查看登录账号使用企业管理器可以创建、查看和管理登录账号。“登录账号”存放在SQL服务器的安全性文件夹中。当进入企业管理器,打开指定的SQL服务器组和SQL服务器,并选择【安全性】文件夹的系列操作后,就会出现如图9-2所示的屏幕窗口。通过该窗口可以看出安全性文件夹包括4个文件夹:登录、服务器角色、连接服务器和远程服务器。单击【登录】可以看到当前数据库服务器的合法登录用户的一些信息。 编辑或删除登录账号单击【登录】文件夹,在出现的

14、显示登录账号的窗口中,用鼠标右击需要操作的登录号:选择【属性】便可对该用户已设定内容进行重新编辑;选择【删除】便可删除该登录用户。进行上述操作需要对当前服务器拥有管理登录(Security Administrators)及其以上的权限。,SQL Server 安全体系结构,安全性文件夹的屏幕界面,日常故障处理和维护,新建登录对话框,SQL Server 安全体系结构,数据库用户管理 用户账号用户账号是某个数据库的访问标识。在SQL Server的数据库中,对象的全部权限均由用户账号控制。用户账号可以与登录账号相同也可以不想同。数据库用户必须是登录用户。登录用户只有成为数据库用户(或数据库角色)

15、后才能访问数据库。用户账号与具体的数据库有关。在该表中每一行数据表示一个SQL Server用户或SQL Server角色信息。创建数据库的用户称为数据库所有者(dbo),他具有这个数据库的所有权限。创建数据库对象的用户称为数据库对象的所有者(dbo),他具有该对象的所有权限。系统管理员sa是他所管理系统的任何数据库的dbo用户。,SQL Server 安全体系结构,查看用户账号使用企业管理器可以创建、查看和管理数据库用户。每个数据库中都有“用户”文件夹。当进入企业管理器,打开指定的SQL服务器组和SQL服务器,并打开【数据库】文件夹,选定并打开要操作的数据库后,单击【用户】文件夹就会出现如图

16、所示的用户信息窗口。通过该窗口可以看到当前数据库合法用户的一些信息。,查看用户信息窗口,SQL Server 安全体系结构,创建新的数据库用户创建新的数据库用户有两种方法。 在创建登录用户时,指定他作为数据库用户的身份例如,在图9-3新建登录对话框中,输入登录名称(如user1),单击【数据库访问】选项卡,在【指定此登录可以访问的数据库S】区域的【许可】栏目下指定访问数据库(如MyDb),如图95所示,登录用户user1同时也成为数据库MyDb的用户。 单独创建数据库用户这种方法适于在创建登录账号时没有创建数据库用户的情况,操作步骤如下:右击【用户】文件夹,在弹出的菜单中选择【新建数据库用户】

17、命令后,会出现图9-6所示新建用户对话框界面,在【登录名】下拉框中选择预创建用户对应的登录名,然后在【用户名】的文本框中键入用户名即可。如图96所示。通过此界面也可以设定该数据库用户的权限和角色的成员。,SQL Server 安全体系结构,创建登录时指定登录用户同时作为数据库用户界面,SQL Server 安全体系结构,单独创建数据库用户对话框,SQL Server 安全体系结构,编辑或删除数据库用户账号单击【用户】文件夹,在出现的显示用户账号的窗口中,右击需要操作的用户账号,选择【属性】命令,出现该用户的角色和权限窗口,可对该用户已设定内容进行重新编辑;选择【删除】便可删除该数据库用户。进行

18、上述操作需要对当前数据库拥有用户管理及其以上的权限。,SQL Server 安全体系结构,数据库系统角色管理在SQL Server 2000中可以把某些用户设置成某一角色,这些用户称为该角色的成员。当对该角色进行权限设置时,其成员自动继承该角色的权限。SQL Server中有两种角色,即服务器角色和数据库角色。 服务器角色一台计算机可以承担多个 SQL Server服务器的管理任务。固定服务器角色是对服务器级用户即登录账号而言的。它是指在登录时授予该登录账号对当前服务器范围内的权限。这类角色可以在服务器上进行相应的管理操作,完全独立于某个具体的数据库。固定服务器角色的信息存储在master数据

19、库的sysxlogins系统表中。SQL Server 2000提供了8种固定服务器角色,如图所示。,SQL Server 安全体系结构,固定服务器角色,数据库死锁解决方法,1、死锁是如何产生的呢?如果事务T1封锁了数据R1,T2封锁了数据R2,然后T1又请求封锁R2,因为T2已经封锁了R2,于是T1只能等待T2释放R2上的锁。接着T2又请求封锁R1,因T1已经封锁了R1,T2也只能等待T1释放R2上的锁。这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁。,日常故障处理和维护,1、死锁是如何产生的呢?如果事务T1封锁了数据R1,T2封锁了数据R2,

20、然后T1又请求封锁R2,因为T2已经封锁了R2,于是T1只能等待T2释放R2上的锁。接着T2又请求封锁R1,因T1已经封锁了R1,T2也只能等待T1释放R2上的锁。这样就出现了T1在等待T2,而T2又在等待T1的局面,T1和T2两个事务永远不能结束,形成死锁。,数据库死锁解决方法,2、如何预防和处理死锁?目前在数据库中解决死锁问题主要有两类方法,一类是采取一定的措施来预防死锁,另一类是允许发生死锁,采用一定的手段定期诊断系统中有无死锁,有则解除之。防止死锁其实就是要破坏产生死锁的条件,预防死锁通常有两种方法:(1)一次封锁法一次封锁法要求每个事务必须一次将所有要使用的数据加上锁,否则就不能执行

21、。虽然这样能有效防止死锁,但也存在问题。第一,对全部数据加锁,扩大了封锁的范围,从而降低了系统的并发度。第二,数据库中的数据是不断变化的,原来不要封锁的数据,在执行的过程中可能成为封锁的对象,所以很难事先精确确定每个事务要封锁的数据对象,为此只能扩大封锁范围,进一步降低了并发度。(2)顺序封锁发顺序封锁法是预先对数据排定一个封锁顺序,所有的事务都按照这个顺序实行封锁。这样也能有效防止死锁,但也存在问题。第一,数据库系统中封锁的数据对象极多,并且随着数据的变化,要维护这样的封锁顺序是很困难的,成本很高。第二,事务的封锁请求可能随着事务的执行而动态的决定,很难事先要确定封锁哪一个对象。基于以上的分析,在目前我们采用的预防死锁的策略不是很适合数据库的特点,因此在解决死锁的问题上采用的是诊断并解除死锁的方法。,数据库死锁解决方法,3、死锁的诊断诊断死锁一般是采用超时法或事务等待图法。超时法是一个事务等待的时间超过规定的时限,就认为发生了死锁,但这样有个明显的缺点是容易产生误判。等待图法是一个有向图 G=(T,U)。T为节点的集合,每个节点表示正在运行的事务;U为边的集合,每条边表示等待的情况,若T1等待T2,则T1到T2间划一条有向边,如果发现有回路,则表示发生了死锁。,Thank You !,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报