数据库的安全管理培训教材(共58页).ppt_第1页
数据库的安全管理培训教材(共58页).ppt_第2页
数据库的安全管理培训教材(共58页).ppt_第3页
数据库的安全管理培训教材(共58页).ppt_第4页
数据库的安全管理培训教材(共58页).ppt_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

1、第第12章章 数据库的平安管理数据库的平安管理 本章内容本章内容12.1 事务事务12.2 SQL Server 的平安机制的平安机制12.3 SQL Server 的权限管理的权限管理12.1 事务事务第第1111章章 数据库的平安管理数据库的平安管理 12.1.1 事务特性事务特性12.1.2 事务管理事务管理12.1 事务事务第第1111章章 数据库的平安管理数据库的平安管理 事务是作为单个逻辑工作单元执行的一系列事务是作为单个逻辑工作单元执行的一系列操作。事务处理可以确保只有在事务性单元内的操作。事务处理可以确保只有在事务性单元内的所有操作都成功完成的情况下,才会永久更新面所有操作都成

2、功完成的情况下,才会永久更新面向数据的资源。通过将一组相关操作组合为一个向数据的资源。通过将一组相关操作组合为一个或者全部成功或者全部失败的单元,可以简化错或者全部成功或者全部失败的单元,可以简化错误恢复并使应用程序更加可靠。误恢复并使应用程序更加可靠。12.1.1 事务特性事务特性第第1111章章 数据库的平安管理数据库的平安管理 每一个事务都具有原子性、一致性、隔离性和持久每一个事务都具有原子性、一致性、隔离性和持久性,也称为事务的性,也称为事务的ACID属性。属性。(1)原子性原子性(2)一致性一致性(3)隔离性隔离性(4)持久性持久性12.1.1 事务管理事务管理第第1111章章 数据

3、库的平安管理数据库的平安管理 应用程序主要通过指定事务启动和结束的时应用程序主要通过指定事务启动和结束的时间来控制事务。可以使用间来控制事务。可以使用Transact-SQL语句或数语句或数据库应用程序编程接口据库应用程序编程接口(API)函数来指定这些时间。函数来指定这些时间。系统还必须能够正确处理那些在事务完成之前便系统还必须能够正确处理那些在事务完成之前便终止事务的错误终止事务的错误1. 事务类型事务类型第第1111章章 数据库的平安管理数据库的平安管理 在在SQL Server中有三种事务类型,分别是隐式事务、中有三种事务类型,分别是隐式事务、显式事务、自动提交事务,缺省为自动提交。显

4、式事务、自动提交事务,缺省为自动提交。(1)自动提交事务自动提交事务自动提交事务是指对于用户发出的每条自动提交事务是指对于用户发出的每条Transact-SQL语句,语句,SQL Server都会自动开始都会自动开始一个一个SQL Server事务,并且在执行后自动进行提事务,并且在执行后自动进行提交操作来完成这个事务,也可以说在这种事务模交操作来完成这个事务,也可以说在这种事务模式下,一个式下,一个Transact-SQL语句就是一个事务。语句就是一个事务。第第1111章章 数据库的平安管理数据库的平安管理 (2)显式事务显式事务显式事务是指在自动提交模式下以显式事务是指在自动提交模式下以B

5、EGIN TRANSACTION开始一个开始一个SQL Server事务,以事务,以COMMIT或或ROLLBACK结束一个结束一个SQL Server事事务,以务,以Commit结束事务是把结束事务是把SQL Server事务中的事务中的修改永久化,即使这时发生断电这样的故障。修改永久化,即使这时发生断电这样的故障。(3)隐式事务隐式事务隐式事务是指在当前会话中用隐式事务是指在当前会话中用SET IMPLICIT_TRANSACTIONS ON命令设置的事命令设置的事务类型,这时任何务类型,这时任何DML语句语句(DELETE、UPDATE、INSERT)都会开始一个事务,而事务都会开始一个

6、事务,而事务的结束也是用的结束也是用COMMIT或或ROLLBACK。2. 启动和技术事务启动和技术事务第第1111章章 数据库的平安管理数据库的平安管理 使用使用API函数和函数和Transact-SQL语句,可以在语句,可以在SQL Server Database Engine实例中将事务作为显式、自动提实例中将事务作为显式、自动提交或隐式事务启动和结束。交或隐式事务启动和结束。(1)显式事务显式事务显式事务就是可以显式地在其中定义事务的开始和结束显式事务就是可以显式地在其中定义事务的开始和结束的事务。的事务。BEGIN TRANSACTION:标记显式连接事务的起始点。标记显式连接事务的

7、起始点。COMMIT TRANSACTION或或COMMIT WORK:如果没有如果没有遇到错误,可使用该语句成功地结束事务遇到错误,可使用该语句成功地结束事务ROLLBACK TRANSACTION或或ROLLBACK WORK:用用来去除遇到错误的事务。来去除遇到错误的事务。(2)自动提交模式自动提交模式第第1111章章 数据库的平安管理数据库的平安管理 自动提交模式是自动提交模式是SQL Server Database Engine的默认事务管理模式。每个的默认事务管理模式。每个Transact-SQL语句在语句在完成时,都被提交或回滚。如果一个语句成功地完成时,都被提交或回滚。如果一个

8、语句成功地完成,那么提交该语句;如果遇到错误,那么回完成,那么提交该语句;如果遇到错误,那么回滚该语句。只要没有显式事务或隐式事务覆盖自滚该语句。只要没有显式事务或隐式事务覆盖自动提交模式,与数据库引擎实例的连接就以此默动提交模式,与数据库引擎实例的连接就以此默认模式操作。认模式操作。(3)隐式事务隐式事务第第1111章章 数据库的平安管理数据库的平安管理 当连接以隐式事务模式进行操作时,当连接以隐式事务模式进行操作时,SQL Server Database Engine实例将在提交或回滚当前实例将在提交或回滚当前事务后自动启动新事务。无需描述事务的开始,事务后自动启动新事务。无需描述事务的开

9、始,只需提交或回滚每个事务。隐式事务模式生成连只需提交或回滚每个事务。隐式事务模式生成连续的事务链。续的事务链。3. 事务处理过程中的错误事务处理过程中的错误第第1111章章 数据库的平安管理数据库的平安管理 如果某个错误使事务无法成功完成,如果某个错误使事务无法成功完成,SQL Server会自动回滚该事务,并释放该事务占用的会自动回滚该事务,并释放该事务占用的所有资源。如果客户端与数据库引擎实例的网络所有资源。如果客户端与数据库引擎实例的网络连接中断了,那么当网络向实例通知该中断后,连接中断了,那么当网络向实例通知该中断后,该连接的所有未完成事务均会被回滚。如果客户该连接的所有未完成事务均

10、会被回滚。如果客户端应用程序失败或客户机崩溃或重新启动,也会端应用程序失败或客户机崩溃或重新启动,也会中断连接,而且当网络向数据库引擎实例通知该中断连接,而且当网络向数据库引擎实例通知该中断后,该实例会回滚所有未完成的连接。如果中断后,该实例会回滚所有未完成的连接。如果客户端从该应用程序注销,所有未完成的事务也客户端从该应用程序注销,所有未完成的事务也会被回滚。会被回滚。12.2 SQL Server 的平安机制的平安机制第第1111章章 数据库的平安管理数据库的平安管理 12.2.1 平安机制级别平安机制级别12.2.2 主体主体12.2.3 SQL Server中的身份验证中的身份验证12

11、.2.4 数据库用户数据库用户12.2.5 角色角色12.2.1 平安机制级别平安机制级别第第1111章章 数据库的平安管理数据库的平安管理 SQL Server 2005的平安机制分为四级,其中的平安机制分为四级,其中第一层和第二层属于验证过程,第三层和第四层第一层和第二层属于验证过程,第三层和第四层属于授权过程属于授权过程12.2.2 主体主体第第1111章章 数据库的平安管理数据库的平安管理 主体是指可以请求主体是指可以请求SQL Server资源的个体、资源的个体、组和过程。与组和过程。与SQL Server授权模型的其他组件一授权模型的其他组件一样,主体也可以按层次结构排列。样,主体

12、也可以按层次结构排列。各级别的主体包含的内容如下。各级别的主体包含的内容如下。12.2.3 SQL Server中的身份验证中的身份验证11.1 SQL Server 11.1 SQL Server 的平安机制的平安机制nSQL Server的平安性管理是建立在身份验证和访的平安性管理是建立在身份验证和访问许可两者机制上的。问许可两者机制上的。n身份验证是确定登录身份验证是确定登录SQL Server的用户的登录账的用户的登录账号和密码是否正确,以此来验证其是否具有连接号和密码是否正确,以此来验证其是否具有连接SQL Server的权限。的权限。n通过认证的用户必须获取访问数据库的权限,才通过

13、认证的用户必须获取访问数据库的权限,才能对数据库进行权限许可下的操作。能对数据库进行权限许可下的操作。1. SQL Server身份验证模式类型身份验证模式类型 11.1.1 11.1.1 身份验证身份验证(1)Windows身份验证模式身份验证模式该模式使用该模式使用Windows操作系统的平安机制验操作系统的平安机制验证用户身份,只要用户能够通过证用户身份,只要用户能够通过Windows用户账号验证,即可连接到用户账号验证,即可连接到SQL Server而而不再进行身份验证。不再进行身份验证。这种模式只适用于能够提供有效身份验证的这种模式只适用于能够提供有效身份验证的Windows操作系统

14、。操作系统。 (2)混合身份验证模式混合身份验证模式11.1.1 11.1.1 身份验证身份验证n在该模式下,在该模式下,Windows身份验证和身份验证和SQL server验证两种模式都可用。对于可信任连验证两种模式都可用。对于可信任连接用户接用户(由由Windows验证验证),系统直接采用,系统直接采用Windows的身份验证机制,否那么的身份验证机制,否那么SQL Server将通过账号的存在性和密码的匹配性将通过账号的存在性和密码的匹配性自行进行验证,即采用自行进行验证,即采用SQL Server身份验身份验证模式。证模式。 2 身份验证模式的设置身份验证模式的设置 11.1.1 1

15、1.1.1 身份验证身份验证n在该模式下,在该模式下,Windows身份验证和身份验证和SQL server验证两种模式都可用。对于可信任连验证两种模式都可用。对于可信任连接用户接用户(由由Windows验证验证),系统直接采用,系统直接采用Windows的身份验证机制,否那么的身份验证机制,否那么SQL Server将通过账号的存在性和密码的匹配性将通过账号的存在性和密码的匹配性自行进行验证,即采用自行进行验证,即采用SQL Server身份验身份验证模式。证模式。 身份验证内容身份验证内容11.1.1 11.1.1 身份验证身份验证n包括确认用户的账号是否有效、能否访问包括确认用户的账号是

16、否有效、能否访问系统、能访问系统的哪些数据库。系统、能访问系统的哪些数据库。11.1.2 身份验证模式的设置身份验证模式的设置 11.1 SQL Server 11.1 SQL Server 的平安机制的平安机制1.方法一:翻开方法一:翻开SQL Server管管理平台,在理平台,在“已注册的效劳已注册的效劳器子窗口中设置验证模式。器子窗口中设置验证模式。n2方法二方法二n在在SQL Server管理平台的对管理平台的对象资源管理器象资源管理器中,右键单击中,右键单击效劳器,在弹效劳器,在弹出的快捷菜单出的快捷菜单中选择中选择“属性,属性,翻开如下图的翻开如下图的“效劳器属性效劳器属性窗口。窗

17、口。11.1.2 11.1.2 身份验证模式的设置身份验证模式的设置11.2 11.2 登录账号管理登录账号管理3. 创立登录账户创立登录账户n创立登录账户的方法有两种:创立登录账户的方法有两种:n一种是从一种是从Windows用户或组中创立登录账用户或组中创立登录账户户n一种是创立新的一种是创立新的SQL Server登录账户。登录账户。11.2.1 11.2.1 创立登录账户创立登录账户1. 通过通过Windows身份验证创立登录身份验证创立登录 (1)创立创立Windows用户用户以管理员身份登录到以管理员身份登录到Windows 2003,选择,选择“开始开始程序程序管理工管理工具具计

18、算机管理选计算机管理选项项 。 11.2.1 11.2.1 创立登录账户创立登录账户展开展开“本地用户和组文件本地用户和组文件夹,选择夹,选择“用户图标,单用户图标,单击鼠标右键,在快捷菜单击鼠标右键,在快捷菜单中选择中选择“新用户项,翻开新用户项,翻开“新用户对话框,输入用新用户对话框,输入用户名、密码,单击户名、密码,单击“创立创立按钮,然后单击按钮,然后单击“关闭按关闭按钮完成创立。钮完成创立。11.2.1 11.2.1 创立登录账户创立登录账户(2)使用企业管理器将使用企业管理器将Windows 2003账号参加账号参加到到SQL Server中,创立中,创立SQL Server登录登

19、录启动启动SQL Server管理平台,在对象资源管管理平台,在对象资源管理器中分别展开理器中分别展开“效劳器效劳器“平安性平安性“登录名。登录名。 右击右击“登录名,在弹出的快捷菜单上选择登录名,在弹出的快捷菜单上选择“新建登录名,进行新建登录名,进行“登录名登录名-新建对话新建对话框框 。11.2.1 11.2.1 创立登录账户创立登录账户在在“登录名登录名-新建对新建对话框选择话框选择Windows验验证模式,登录名通过证模式,登录名通过单击单击“搜索按钮自动搜索按钮自动产生,单击产生,单击“搜索按搜索按钮后出现钮后出现“选择用户或选择用户或组对话框,在对象组对话框,在对象名称框中直接输

20、入名名称框中直接输入名称或单击称或单击“高级按钮高级按钮后查找用户或组名称后查找用户或组名称来完成输入。来完成输入。 11.2.1 11.2.1 创立登录账户创立登录账户单击单击“确定按钮,一确定按钮,一个个Windows组或用户组或用户即可增加到即可增加到SQL Server登录帐户中去。登录帐户中去。 11.2.1 11.2.1 创立登录账户创立登录账户对于已经创立的对于已经创立的Windows用户或组,可以使用户或组,可以使用系统存储过程用系统存储过程sp_grantlogin授予其登录授予其登录SQL Server的权限。的权限。n其语法格式如下:其语法格式如下:nsp_grantlo

21、gin loginame= login n其中,其中,loginame= login 为要添加为要添加的的Windows用户或组的名称,名称格式为用户或组的名称,名称格式为“域名域名计算机名计算机名用户名。用户名。11.2.1 11.2.1 创立登录账户创立登录账户n如果使用混合验证模式或不通过如果使用混合验证模式或不通过Windows用户或用户组连接用户或用户组连接SQL Server,那么需要,那么需要在在SQL Server下创立用户登录权限,使用下创立用户登录权限,使用户得以连接使用户得以连接使用SQL Server身份验证的身份验证的SQL Server实例。实例。2. 创立创立SQ

22、L Server登录登录11.2.1 11.2.1 创立登录账户创立登录账户 在在SQL Server管理平台中创立管理平台中创立SQL Server登录帐户的具体步骤类似于登录帐户的具体步骤类似于“将将Windows 2003帐帐号映射到号映射到SQL Server中的操作方法。中的操作方法。 只是要选择只是要选择SQL Server验证模式,并输入登验证模式,并输入登录帐户名称、密码及确认密码。其他选项卡的设录帐户名称、密码及确认密码。其他选项卡的设置操作类似,最后单击置操作类似,最后单击“确定按钮,即增加了一确定按钮,即增加了一个新的登录帐户。个新的登录帐户。 1使用SQL Server

23、管理平台创立登录帐户 11.2.1 11.2.1 创立登录账户创立登录账户(2)使用系统存储过程使用系统存储过程sp_addlongin创立登录创立登录sp_addlogin语法格式如下:语法格式如下:sp_addlogin loginame= login, passwd= password , defdb= database, deflanguage= language , sid=sid, encryptopt= encryption_option 11.2 11.2 登录账号管理登录账号管理 4. 删除登录账户删除登录账户 当某一登录帐户不再使用时,应该将其删除,以保证数据库的平安性和保

24、密性。删除登录帐户可以通过管理平台和Transact-SQL语句来进行。 1使用SQL Server管理平台删除登录 其操作步骤如下:1启动SQL Server管理平台,在对象资源管理器中分别展开“效劳器“平安性“登录名。2在“登录名详细列表中鼠标右键单击要删除的用户,在弹出的快捷菜单中选择“删除命令,确定删除。 11.2 11.2 登录账号管理登录账号管理 n删除登录账号有两种形式:删除Windows用户或组登录和删除SQL Server登录。(1)删除删除Windows用户或组登录用户或组登录sp_revokelogin的语法格式为:sp_revokelogin liginame=logi

25、n其中,liginame=login为Windows用户或组的名称。2. 使用使用Transact-SQL语句删除登录账号语句删除登录账号11.2 11.2 登录账号管理登录账号管理 n使用使用sp_droplogin可以删除可以删除SQL Server登录。其登录。其语法格式如下:语法格式如下:sp_droplogin loginame= loginn例例11-8 使用系统存储过程使用系统存储过程sp_droplogin删除删除SQL Server登录账号登录账号ZG001。EXEC sp_droplogin ZG001(2)删除删除SQL Server登录登录12.2.4 数据库用户的管理

26、数据库用户的管理 第第1111章章 数据库的平安管理数据库的平安管理 1使用使用SQL Server管理平台创立数据库用管理平台创立数据库用户户 其操作步骤如下:其操作步骤如下:1翻开翻开SQL Server管理平台,在其管理平台,在其“对象对象资源管理器面板中依次展开资源管理器面板中依次展开“效劳器效劳器“数据库数据库“平安性节点。右击选择平安性节点。右击选择其下的其下的“用户对象,在翻开的菜单中选择用户对象,在翻开的菜单中选择“新建用户命令,翻开的新建用户命令,翻开的“数据库用户数据库用户-新新建窗口。建窗口。 11.3 11.3 数据库用户的管理数据库用户的管理n2在翻开的“数据库用户-

27、新建窗口中,单击“登录名右边的“命令可搜索登录用户或直接在文本框中输入用户的登录名,在用户名栏中输入用户名称,用户名可以与登录名不一样。n3在“此用户拥有的架构和“数据库角色成员身份区域选择此用户拥有的架构和参加的角色,选中角色名前的复选框即可。n4单击“新建用户窗口的“确定按钮,数据库用户建立完成。 2. 使用系统存储过程创立数据库用户使用系统存储过程创立数据库用户nSQL Server使用系统存储过程使用系统存储过程sp_grantdbaccess为数据库添加用户,其语为数据库添加用户,其语法格式如下:法格式如下:sp_grantdbaccess loginame= login , nam

28、e_in_db= name_in_db OUTPUT11.3 11.3 数据库用户的管理数据库用户的管理12.2.5 角色角色 第第1111章章 数据库的平安管理数据库的平安管理 1 效劳器角色效劳器角色2 数据库角色数据库角色应用程序角色应用程序角色角色是指为管理相同权限的用户而设置的角色是指为管理相同权限的用户而设置的用户组,也就是说,同一角色下的用户权用户组,也就是说,同一角色下的用户权限都是相同的。将一些用户添加到具体某限都是相同的。将一些用户添加到具体某种权限的角色中,权限在用户成为角色成种权限的角色中,权限在用户成为角色成员时自动生效。员时自动生效。 11.4 11.4 角色管理角

29、色管理1 效劳器角色效劳器角色效劳器角色具有一组固定的权限,作用域在效劳器角色具有一组固定的权限,作用域在效劳器范围内,是独立于数据库的管理特权分组,效劳器范围内,是独立于数据库的管理特权分组,主要实现主要实现SA、数据库创立者及平安性管理员职能,、数据库创立者及平安性管理员职能,且不能更改分配给它们的权限。且不能更改分配给它们的权限。 固定效劳器角色的作用域为效劳器范围。固固定效劳器角色的作用域为效劳器范围。固定效劳器角色的每个成员都可以向其所属角色添定效劳器角色的每个成员都可以向其所属角色添加其他登录名。表加其他登录名。表12.2列出了固定效劳器角色的列出了固定效劳器角色的名称及权限。名称

30、及权限。11.4.1 SQL Server11.4.1 SQL Server角色的类型角色的类型2. 数据库角色数据库角色n数据库角色在数据库级别上定义,提供数据库层管理特权数据库角色在数据库级别上定义,提供数据库层管理特权的分组,主要实现数据库的访问、备份与恢复及平安性等的分组,主要实现数据库的访问、备份与恢复及平安性等职能职能n数据库角色分为固定数据库角色和用户定义的数据库角色。数据库角色分为固定数据库角色和用户定义的数据库角色。固定数据库角色不允许改变。用户定义的数据库角色只适固定数据库角色不允许改变。用户定义的数据库角色只适用于数据库级别,通过用户定义的角色可以轻松地管理数用于数据库级

31、别,通过用户定义的角色可以轻松地管理数据库中的权限。据库中的权限。3 应用程序角色应用程序角色应用程序角色是一个数据库主体,它使应应用程序角色是一个数据库主体,它使应用程序能够用其自身的、类似用户的特权来用程序能够用其自身的、类似用户的特权来运行。管理平台和系统存储过程实现。运行。管理平台和系统存储过程实现。登录、用户、角色是登录、用户、角色是SQL Server 2005平安平安机制的根底。三者联系如下:机制的根底。三者联系如下:效劳器角色和登录名相对应。效劳器角色和登录名相对应。数据库角色和用户对应的,数据库角色和用户数据库角色和用户对应的,数据库角色和用户都是数据库对象,定义和删除时必须

32、选择所都是数据库对象,定义和删除时必须选择所属的数据库。属的数据库。一个数据库角色中可以有多个用户,一个用户一个数据库角色中可以有多个用户,一个用户也可以属于多个数据库角色也可以属于多个数据库角色11.4 11.4 角色管理角色管理11.4.4 11.4.4 用户定义数据库角色用户定义数据库角色1在在SQL Server管理平台中添管理平台中添加或删除数据库角色成员加或删除数据库角色成员 n方法一:在上面提到过的某数据库角色的方法一:在上面提到过的某数据库角色的“数据库角色数据库角色属性对话框中,在属性对话框中,在“常规选项卡上,右下角成员操常规选项卡上,右下角成员操作区,单击作区,单击“添加

33、或添加或“删除按钮实现操作。删除按钮实现操作。n方法二:通过方法二:通过“对象资源管理器对象资源管理器“数据库效劳器数据库效劳器“数据库数据库“某具体数据库某具体数据库“平安性平安性“用用户户“某具体用户上单击鼠标右键,在弹出的快捷某具体用户上单击鼠标右键,在弹出的快捷菜单项选择择菜单项选择择“属性,出现属性,出现“数据库用户对话框,数据库用户对话框,在右下角成员操作区,通过多项选择按钮直接实现为该在右下角成员操作区,通过多项选择按钮直接实现为该用户从某个或某些数据库角色中添加或删除。用户从某个或某些数据库角色中添加或删除。 12.3 SQL Server的权限管理的权限管理 第第1111章章

34、 数据库的平安管理数据库的平安管理 12.3.1 权限种类权限种类12.3.2 设置权限设置权限 11.5.1 权限类型权限类型11.5 11.5 权限管理权限管理n权限是指用户对数据库中对象的使用及操作的权权限是指用户对数据库中对象的使用及操作的权利,当用户连接到利,当用户连接到SQL Server实例后,该用户要实例后,该用户要进行的任何涉及修改数据库或访问数据的活动都进行的任何涉及修改数据库或访问数据的活动都必须具有相应的权限,也就是用户可以执行的操必须具有相应的权限,也就是用户可以执行的操作均由其被授予的权限决定。作均由其被授予的权限决定。nSQL Server中的权限包括中的权限包括

35、3种类型:对象权限、语种类型:对象权限、语言权限和隐含权限。言权限和隐含权限。1. 对象权限对象权限 11.5.1 11.5.1 权限的种类权限的种类n对象权限用于用户对数据库对象执行操作对象权限用于用户对数据库对象执行操作的权力,即处理数据或执行存储过程的权力,即处理数据或执行存储过程(INSERT、UPDATE、DELETE、EXECUTE等等)所需要的权限,这些数据库所需要的权限,这些数据库对象包括表、视图、存储过程。对象包括表、视图、存储过程。表表11-3 对象及作用的操作对象及作用的操作 11.5.1 11.5.1 权限的种类权限的种类对 象操 作表SELECT、INSERT、UPD

36、ATE、DELETE、REFERANCES视图SELECT、INSERT、UPDATE、DELETE存储过程EXECUTE列SELECT、UPDATE2. 语句权限语句权限n语句权限主要指用户是否具有权限来执行语句权限主要指用户是否具有权限来执行某一语句,这些语句通常是一些具有管理某一语句,这些语句通常是一些具有管理性的操作,如创立数据库、表、存储过程性的操作,如创立数据库、表、存储过程等。这种语句虽然也包含有操作等。这种语句虽然也包含有操作(如如CREATE)的对象,但这些对象在执行该语的对象,但这些对象在执行该语句之前并不存在于数据库中,所以将其归句之前并不存在于数据库中,所以将其归为语句

37、权限范畴。为语句权限范畴。 11.5.1 11.5.1 权限的种类权限的种类表11-4 语句权限及其作用 11.5.1 11.5.1 权限的种类权限的种类语 句作 用CREATE DATABASE创建数据库CREATE TABLE在数据库中创建表CREATE VIEW在数据库中创建视图CREATE DEFAULT在数据库中创建默认对象CREATE PROCEDURE在数据库中创建存储过程CREATE RULE在数据库中创建规则CREATE FUNCTION在数据库中创建函数BACKUP DATABASE备份数据库BACKUP LOG备份日志3. 隐含权限隐含权限n隐含权限是指系统自行预定义而不

38、需要授权就有隐含权限是指系统自行预定义而不需要授权就有的权限,包括固定效劳器角色、固定数据库角色的权限,包括固定效劳器角色、固定数据库角色和数据库对象所有者所拥有的权限。和数据库对象所有者所拥有的权限。n固定角色拥有确定的权限,例如固定效劳器角色固定角色拥有确定的权限,例如固定效劳器角色sysadmin拥有完成任何操作的全部权限,其成员拥有完成任何操作的全部权限,其成员自动继承这个固定角色的全部权限。数据库对象自动继承这个固定角色的全部权限。数据库对象所有者可以对所拥有的对象执行一切活动,如查所有者可以对所拥有的对象执行一切活动,如查看、添加或删除数据等操作,也可以控制其他用看、添加或删除数据

39、等操作,也可以控制其他用户使用其所拥有的对象的权限。户使用其所拥有的对象的权限。 11.5.1 11.5.1 权限的种类权限的种类12.3.2 设置权限设置权限1使用图形工具设置用户或使用图形工具设置用户或角色权限操作步骤如下:角色权限操作步骤如下:(1)授予或拒绝语句权限授予或拒绝语句权限1)连接到相应的连接到相应的Microsoft SQL Server Database Engine实例之后,在实例之后,在“对象对象资源管理器中,单击效劳资源管理器中,单击效劳器名称,以展开效劳器树。器名称,以展开效劳器树。2)展开展开“数据库,右击用户数据库,右击用户数据库,如数据库,如teaching

40、。3)在出现的快捷菜单中选择在出现的快捷菜单中选择“属性,出现如图属性,出现如图12.14所所示的示的“数据库属性数据库属性-teaching窗口。窗口。11.5 11.5 权限管理权限管理11.5.2 11.5.2 授予权限授予权限n(2)授予或拒绝对象权限授予或拒绝对象权限n1)连接到相应的连接到相应的Microsoft SQL Server Database Engine实例之后,在实例之后,在“对象对象资源管理器中,单击效资源管理器中,单击效劳器名称以展开效劳器树。劳器名称以展开效劳器树。n2)展开展开“数据库,选择用数据库,选择用户数据库,如户数据库,如teaching。展开用户数据

41、库及其下的展开用户数据库及其下的“表。表。n3)右击要设置权限的表名,右击要设置权限的表名,如如“s_c,出现如图,出现如图12.15所示的所示的“表属性表属性-s_c窗口。窗口。2.使用使用Transact-SQL命令设置用户或角色权命令设置用户或角色权限限(1)权限的授予权限的授予可以使用可以使用Transact-SQL命令命令GRANT将权限授予用将权限授予用户,语法格式如下。户,语法格式如下。GRANT ALL PRIVILEGES | permission ( column ,.,n ) ,.,n ON securable TO security_account ,.,n WITH GRANT OPTION 11.5.2 11.5.2 授予权限授予权限(2)权限的禁止权限的禁止禁止权限就是删除以前授予用户、组或角色禁止权限就是删除以前授予用户、组或角色的权限,禁止从其他角色继承的权限,且确的权限,禁止从其他角色继承的权限,且确保用户、组或角色将来不继承更高级别的组保用户、组或角色将来不继承更高级别的组或角色的权限。或角色的权

温馨提示

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

评论

0/150

提交评论