《《数据库安全 》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数据库安全 》PPT课件.ppt(58页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第5 5章数据库安全管理章数据库安全管理5.1 SQL Server 2000 5.1 SQL Server 2000 安全构架安全构架5.2 SQL Server5.2 SQL Server的身份验证模式的身份验证模式5.3 5.3 管理登录账号管理登录账号5.4 5.4 管理数据库用户管理数据库用户5.5 5.5 管理权限管理权限5.6 5.6 管理角色管理角色5.1 SQL Server 2000 5.1 SQL Server 2000 安全构架安全构架 数数据据的的安安全全性性:保保护护数数据据以以防防止止不不合合法法的使用而造成数据的泄密和破坏。的使用而造成数据的泄密和破坏。安全性
2、机制安全性机制SQL Server 2000 的安全性管理是建立在身份验证和权限验证两种机制上。身份验证身份验证用来确定登录SQL Server的用户的登录帐号和密码是否正确,以此来验证其是否具有连接SQL Server的权限。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构架权限验证权限验证有了连接SQL Server的权限,不等于能访问数据库,还必须获得访问数据库的权限,才能对数据库进行操作。权限验证用来获得访问数据库和数据库对象如表、视图、存储过程等的权限。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构
3、架5.1.5.1.相关概念相关概念SQL Server 2000 使用身份验证,数据库用户管理,权限管理,角色管理来保护数据库中的数据。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构架SQL Server SQL Server 登录账号登录账号设置登录账号,用户通过登录账号名和密码可以登录到SQL Server服务器上。特别注意:录账号本身并不能让用户访问服务器中的数据库,要访问特定的数据流库,还必须具有用户帐号。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构架数据库用户数据库用户 用户要想拥有访问某个数据
4、库的权力,就必须在这个数据库上创建一个数据库用户,并将登录账号和这个数据库用户相关联。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构架权限权限 一个登录者通过数据库用户关联到某一个数据库上,还需要为它加上一些限制,来控制它对数据库的访问级别,这就是权限。5.1SQL Server 2000 5.1SQL Server 2000 安全构架安全构架角色角色角色是SQL Server 2000版本引进的新概念,是为了方便权限管理而设置的一种管理单位。如果打算使一组登录账户或数据库用户在数据库服务器或数据库对象上具有相同的权限,则可以通过角色实现。5.2 S
5、QL Server5.2 SQL Server的身份验证模式的身份验证模式 5.2.1Windows 5.2.1Windows 身份验证模式身份验证模式SQL Server数据库系统通常运行在Windows 2000 Server/NT服务器平台上。在Windows 验证模式下,SQL Server2000检测当前使用Windows 2000 Server/NT的用户帐号,并在系统注册表中查找该用户,以确定该帐号是否有权登录。正是利用了这一用户安全性和帐号管理的机制,允许SQL Server也可以使用Windows的用户名和口令来验证身份。5.2 SQL Server5.2 SQL Serve
6、r的身份验证模式的身份验证模式 5.2.1Windows 5.2.1Windows 身份验证模式身份验证模式优点:l数据库管理员的工作可以集中管理数据库上面,而不是管理用户帐号,对用户帐号的管理可以交给Windows NT/2000去完成。lWindows NT/2000有着更强的用户帐号管理工具,可以设置帐号锁定、密码期限等。5.2 SQL Server5.2 SQL Server的身份验证模式的身份验证模式 混合身份验证模式混合身份验证模式(Windows 身份验证和SQL Server身份验证)SQL Server身份验证:在此种验证方式下,即使用户已经登录操作系统,也必须输入有效的SQ
7、L Server专用登录名与密码方可连入SQL Server 2000 数据库实例。混合验证模式允许用户连接服务器,可采用SQL Server身份验证模式或windows身份验证模式。优点:创建了Windows NT/2000之外的另一个安全层次。5.2 SQL Server5.2 SQL Server的身份验证模式的身份验证模式 两种验证模式的切换两种验证模式的切换修改服务器的身份验证模式修改服务器的身份验证模式5.2SQL Server5.2SQL Server的身份验证模式的身份验证模式 5.2SQL Server5.2SQL Server的身份验证模式的身份验证模式 修改客户端的身份验
8、证模式修改客户端的身份验证模式需要在注册的服务器的注册属性中修改。5.2SQL Server5.2SQL Server的身份验证模式的身份验证模式 5.35.3管理登录账号管理登录账号5.3.5.3.默认登录账号默认登录账号lBUILTIN/AdministratorsBUILTIN/Administrators默认的Windows身份认证的登录帐号,凡是属于Windows 2000 Server中Administrators组的账号都允许登录SQL Server2000。lsa sa:超级管理员账号:超级管理员账号默认的SQL Server2000身份认证的登录帐号,又称为超级管理员帐号,允
9、许SQL Server的系统管理员登录,该帐号的口令在安装SQL Server2000时指定。这两个默认登录帐号都拥有对SQL Server2000服务器的系统管理权限。5.35.3管理登录账号管理登录账号5.3.5.3.添加登录账号添加登录账号设置设置 SQL Server SQL Server 登录账户登录账户5.35.3管理登录账号管理登录账号三、管理登录账号三、管理登录账号5.35.3管理登录账号管理登录账号修改登录账号修改登录账号5.35.3管理登录账号管理登录账号5.35.3管理登录账号管理登录账号删除登录账号删除登录账号5.35.3管理登录账号管理登录账号5.45.4管理数据库用
10、户管理数据库用户 登录帐号(Login Name)只负责在用户连接数据库实例时的验证,登录帐号本身不能让用户访问服务器中的数据库。要访问数据库,用户还必须在数据库中拥有和其登录服务器时所用的登录名相关联的用户帐号(User Name),也称为数据库用户。5.45.4管理数据库用户管理数据库用户 查看数据库用户查看数据库用户lSQL Server2000为每个数据库自动创建dbo帐号,该帐号和所有属于sysadmin服务器角色的登录帐号(如sa)相关联,并且dbo对所属的数据库拥有完全的权限。l系统还为默认数据库创建guest帐号,任何一个登录帐号当在数据库中没有用户帐号与之关联时,均可通过数据
11、库中的guest帐号访问数据库,用户新建的数据库中则没有guest帐号。5.45.4管理数据库用户管理数据库用户 创建数据库用户创建数据库用户 一个登录名在一个数据库中只能与一个用户名相关联。5.45.4管理数据库用户管理数据库用户 删除数据库用户删除数据库用户 5.55.5管理权限管理权限管理登录帐号的权限管理登录帐号的权限登登录录账账号号没有对数据库操作的权限,但是有对服务器操作的权限。我们可以通过赋予它服务器角色使它具有相应的管理权限。五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限服务器角色表服务器角色表System Administrator可以在SQL Se
12、rver 2000中执行任何活动Server Administrator可以设置服务器范围的配置选项,关闭服务器Setup Administrator可以管理链接服务器和启动过程SecurityAdministrator可以管理登录和创建数据库的权限,还可以读取错误日志和更新密码五、管理权限五、管理权限服务器角色表(续)服务器角色表(续)ProcessAdministrator可以管理在SQL Server 2000中执行的进程Database Administrator可以创建、更改和删除数据库Disk Administrator可以管理磁盘文件BulkAdministrator可以执行BU
13、LK INSERT(大容量插入)语句五、管理权限五、管理权限可设置登录帐号可以访问的数据库,以让SQL Server2000自自动动在在这这些些数数据据库库中中建建立立与与登登录录帐帐号号相相关关联联的的用用户户帐帐号号。(5.6节)5.55.5管理权限管理权限管理数据库用户帐号的权限管理数据库用户帐号的权限 设置用户帐号数据库操作权限(也称语句权限)设置用户帐号数据库操作权限(也称语句权限)对用用户户账账号号设置语句权限是限制用户账号对整个数据库的操作权限,是创建数据库或者数据库中的数据对象(表、视图或存储过程等)所涉及的权限。5.55.5管理权限管理权限管理数据库用户帐号的权限管理数据库用
14、户帐号的权限l数据库用户帐号权限的三个层次数据库用户帐号权限的三个层次(1)创创建建数数据据库库对对象象及及进进行行数数据据库库备备份份的的权权限限(创创建建表、视图、存储过程,备份日志文件等)表、视图、存储过程,备份日志文件等)(2)对对数数据据库库表表的的操操作作权权限限及及执执行行存存储储过过程程的的权权限限(SELECT,INSERT,UPDATE,DELETE,EXECUTE)(3)对对数数据据库库中中指指定定列列的的操操作作权权限限(SELECT、UPDATE)5.55.5管理权限管理权限三种权限三种权限允允许许权权限限(GRANTGRANT):表表示示用用户户或或角角色色能能够够
15、执执行某项操作。行某项操作。拒拒绝绝权权限限(DENYDENY):表表示示用用户户或或角角色色不不能能执执行行某项操作,也称禁止权限。某项操作,也称禁止权限。废废除除权权限限(REVOKEREVOKE):表表示示废废除除以以前前用用户户或或角角色色所所具具有有的的允允许许权权限限或或拒拒绝绝权权限限,但但是是当当用用户户继继承承其其它它角角色色时时,用用户户的的权权限限是是以以其其它它角角色色的的权限为准。权限为准。5.55.5管理权限管理权限拒绝权限优先:拒绝权限优先:如果用户本身设置了一定权限,而它又继承了一定的角色,当它们的权限出现冲突时,以拒绝权限优先。5.55.5管理权限管理权限设设
16、置置用用户户账账号号数数据据库库对对象象的的操操作作权权限限(对对象象权权限)限)5.55.5管理权限管理权限五、管理权限五、管理权限五、管理权限五、管理权限db_owner数据库所有者,可执行数据库的所有管理操作db_accessadmin数据库访问管理者,具有添加、删除数据库使用者、数据库角色和组的权限db_securityadmin数据库安全管理员,可管理数据库中的权限,如设置数据库表的增、删、修改和查询等存取权限db_ddadmin数据库DDL管理员,可增加、修改或删除数据库中的对象db_backupoperator 数据库备份操作员,具有执行数据库备份的权限数据库用户角色表数据库用户
17、角色表五、管理权限五、管理权限db_datareader数据库数据读取者db_datawriter数据库数据写入者,具有对表进行增、删、修改的权限db_denydatareader 数据库拒绝数据读取者,不能读取数据库中任何表的内容db_denydatawriter数据库拒绝数据写入者,不能对任何表进行增、删、修改操作public一个特殊的数据库角色,每个数据库用户都是public角色的成员,通常将一些公共的权限赋给public角色数据库用户角色表数据库用户角色表(续续)五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限当当列列的的权权限限和和表表的的权权限限设设置置冲冲
18、突突时时,以最小粒度的以最小粒度的列的设置为准列的设置为准。5.65.6管理角色管理角色服务器角色服务器角色是用来管理和维护SQL Server2000服务器的,服服务务器器角角色色拥有的管理权限是固定的,用户不能修改,也不能新增和删除服务器角色。只能查看服务器角色。五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限五、管理权限5.65.6管理角色管理角色数据库角色数据库角色标准角色u固定的数据库角色:查看数据库标准角色五、管理权限五、管理权限5.65.6管理角色管理角色u用户自定义的数据库角色用户自定义的数据库角色创建用户数据库角色:创建用户数据库角色:五、管理权限五、管理权限五、管理权限五、管理权限在在创创建建数数据据库库用用户户角角色色时时,不能同时设置权限!不能同时设置权限!5.65.6管理角色管理角色修改用户数据库角色:修改用户数据库角色:五、管理权限五、管理权限五、管理权限五、管理权限本章总结本章总结