《《数据库安全 》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数据库安全 》PPT课件.ppt(58页珍藏版)》请在三一办公上搜索。
1、,第5章数据库安全管理,5.1 SQL Server 2000 安全构架5.2 SQL Server的身份验证模式5.3 管理登录账号5.4 管理数据库用户5.5 管理权限5.6 管理角色,5.1 SQL Server 2000 安全构架,数据的安全性:保护数据以防止不合法的使用而造成数据的泄密和破坏。安全性机制SQL Server 2000 的安全性管理是建立在身份验证和权限验证两种机制上。身份验证用来确定登录SQL Server的用户的登录帐号和密码是否正确,以此来验证其是否具有连接SQL Server的权限。,5.1SQL Server 2000 安全构架,权限验证有了连接SQL Ser
2、ver的权限,不等于能访问数据库,还必须获得访问数据库的权限,才能对数据库进行操作。权限验证用来获得访问数据库和数据库对象如表、视图、存储过程等的权限。,5.1SQL Server 2000 安全构架,5.1.相关概念SQL Server 2000 使用身份验证,数据库用户管理,权限管理,角色管理来保护数据库中的数据。,5.1SQL Server 2000 安全构架,SQL Server 登录账号设置登录账号,用户通过登录账号名和密码可以登录到SQL Server服务器上。特别注意:录账号本身并不能让用户访问服务器中的数据库,要访问特定的数据流库,还必须具有用户帐号。,5.1SQL Serve
3、r 2000 安全构架,数据库用户 用户要想拥有访问某个数据库的权力,就必须在这个数据库上创建一个数据库用户,并将登录账号和这个数据库用户相关联。,5.1SQL Server 2000 安全构架,权限 一个登录者通过数据库用户关联到某一个数据库上,还需要为它加上一些限制,来控制它对数据库的访问级别,这就是权限。,5.1SQL Server 2000 安全构架,角色角色是SQL Server 2000版本引进的新概念,是为了方便权限管理而设置的一种管理单位。如果打算使一组登录账户或数据库用户在数据库服务器或数据库对象上具有相同的权限,则可以通过角色实现。,5.2 SQL Server的身份验证模
4、式,5.2.1Windows 身份验证模式SQL Server数据库系统通常运行在Windows 2000 Server/NT服务器平台上。在Windows 验证模式下,SQL Server2000检测当前使用Windows 2000 Server/NT的用户帐号,并在系统注册表中查找该用户,以确定该帐号是否有权登录。正是利用了这一用户安全性和帐号管理的机制,允许SQL Server也可以使用Windows的用户名和口令来验证身份。,5.2 SQL Server的身份验证模式,5.2.1Windows 身份验证模式优点:数据库管理员的工作可以集中管理数据库上面,而不是管理用户帐号,对用户帐号的
5、管理可以交给Windows NT/2000去完成。Windows NT/2000有着更强的用户帐号管理工具,可以设置帐号锁定、密码期限等。,5.2 SQL Server的身份验证模式,混合身份验证模式(Windows 身份验证和SQL Server身份验证)SQL Server身份验证:在此种验证方式下,即使用户已经登录操作系统,也必须输入有效的SQL Server专用登录名与密码方可连入SQL Server 2000 数据库实例。混合验证模式允许用户连接服务器,可采用SQL Server身份验证模式或windows身份验证模式。优点:创建了Windows NT/2000之外的另一个安全层次。
6、,5.2 SQL Server的身份验证模式,两种验证模式的切换修改服务器的身份验证模式,5.2SQL Server的身份验证模式,5.2SQL Server的身份验证模式,修改客户端的身份验证模式需要在注册的服务器的注册属性中修改。,5.2SQL Server的身份验证模式,5.3管理登录账号,5.3.默认登录账号BUILTIN/Administrators默认的Windows身份认证的登录帐号,凡是属于Windows 2000 Server中Administrators组的账号都允许登录SQL Server2000。sa:超级管理员账号默认的SQL Server2000身份认证的登录帐号,
7、又称为超级管理员帐号,允许SQL Server的系统管理员登录,该帐号的口令在安装SQL Server2000时指定。这两个默认登录帐号都拥有对SQL Server2000服务器的系统管理权限。,5.3管理登录账号,5.3.添加登录账号设置 SQL Server 登录账户,5.3管理登录账号,三、管理登录账号,5.3管理登录账号,修改登录账号,5.3管理登录账号,5.3管理登录账号,删除登录账号,5.3管理登录账号,5.4管理数据库用户,登录帐号(Login Name)只负责在用户连接数据库实例时的验证,登录帐号本身不能让用户访问服务器中的数据库。要访问数据库,用户还必须在数据库中拥有和其登录
8、服务器时所用的登录名相关联的用户帐号(User Name),也称为数据库用户。,5.4管理数据库用户,查看数据库用户SQL Server2000为每个数据库自动创建dbo帐号,该帐号和所有属于sysadmin服务器角色的登录帐号(如sa)相关联,并且dbo对所属的数据库拥有完全的权限。系统还为默认数据库创建guest帐号,任何一个登录帐号当在数据库中没有用户帐号与之关联时,均可通过数据库中的guest帐号访问数据库,用户新建的数据库中则没有guest帐号。,5.4管理数据库用户,创建数据库用户,一个登录名在一个数据库中只能与一个用户名相关联。,5.4管理数据库用户,删除数据库用户,5.5管理权
9、限,管理登录帐号的权限登录账号没有对数据库操作的权限,但是有对服务器操作的权限。我们可以通过赋予它服务器角色使它具有相应的管理权限。,五、管理权限,五、管理权限,五、管理权限,服务器角色表,五、管理权限,服务器角色表(续),五、管理权限,可设置登录帐号可以访问的数据库,以让SQL Server2000自动在这些数据库中建立与登录帐号相关联的用户帐号。(5.6节),5.5管理权限,管理数据库用户帐号的权限 设置用户帐号数据库操作权限(也称语句权限)对用户账号设置语句权限是限制用户账号对整个数据库的操作权限,是创建数据库或者数据库中的数据对象(表、视图或存储过程等)所涉及的权限。,5.5管理权限,
10、管理数据库用户帐号的权限数据库用户帐号权限的三个层次(1)创建数据库对象及进行数据库备份的权限(创建表、视图、存储过程,备份日志文件等)(2)对数据库表的操作权限及执行存储过程的权限(SELECT,INSERT,UPDATE,DELETE,EXECUTE)(3)对数据库中指定列的操作权限(SELECT、UPDATE),5.5管理权限,三种权限允许权限(GRANT):表示用户或角色能够执行某项操作。拒绝权限(DENY):表示用户或角色不能执行某项操作,也称禁止权限。废除权限(REVOKE):表示废除以前用户或角色所具有的允许权限或拒绝权限,但是当用户继承其它角色时,用户的权限是以其它角色的权限为
11、准。,5.5管理权限,拒绝权限优先:如果用户本身设置了一定权限,而它又继承了一定的角色,当它们的权限出现冲突时,以拒绝权限优先。,5.5管理权限,设置用户账号数据库对象的操作权限(对象权限),5.5管理权限,五、管理权限,五、管理权限,数据库用户角色表,五、管理权限,数据库用户角色表(续),五、管理权限,五、管理权限,五、管理权限,当列的权限和表的权限设置冲突时,以最小粒度的列的设置为准。,5.6管理角色,服务器角色是用来管理和维护SQL Server2000服务器的,服务器角色拥有的管理权限是固定的,用户不能修改,也不能新增和删除服务器角色。只能查看服务器角色。,五、管理权限,五、管理权限,五、管理权限,5.6管理角色,数据库角色标准角色固定的数据库角色:查看数据库标准角色,五、管理权限,5.6管理角色,用户自定义的数据库角色创建用户数据库角色:,五、管理权限,五、管理权限,在创建数据库用户角色时,不能同时设置权限!,5.6管理角色,修改用户数据库角色:,五、管理权限,五、管理权限,本章总结,
链接地址:https://www.31ppt.com/p-5519505.html