资源预览内容
第1页 / 共39页
第2页 / 共39页
第3页 / 共39页
第4页 / 共39页
第5页 / 共39页
第6页 / 共39页
第7页 / 共39页
第8页 / 共39页
第9页 / 共39页
第10页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库原理与应用教程人民邮电出版社第10章 安全管理安全管理 v10.1 安全控制安全控制 v10.2 SQL Server的安全控制的安全控制v10.3 管理登录账户管理登录账户v10.4 管理数据库用户管理数据库用户v10.5 管理权限管理权限v10.6 角色角色10.1 安全控制v安全控制:在数据库应用系统的不安全控制:在数据库应用系统的不同层次提供对有意损害行为的安全同层次提供对有意损害行为的安全防范。防范。v1. 安全控制模型 v2. 数据库权限的种类及用户分类1. 安全控制模型安全控制模型文件操作控制操 作 权 控制身份验证用户数据库应用程序数据库管理系统操作系统加密存储与冗余数据库2. 数据库权限的种类及用户的分类 v权限的种类权限的种类系统维护权操作权数据库对象权限:创建、修改、删除数据操作权:增、删、改、查v用户的分类用户的分类系统管理员对象拥有者普通用户10.2 SQL Server的安全控制 v三个认证过程三个认证过程第一个是验证用户连接到SQL Server数据库服务器的资格。第二个是验证用户是否是数据库的合法用户。第三个是验证用户是否具有操作许可。 SQL Server登录账户来源和认证模式1登录账户来源登录账户来源 v Windows授权用户授权用户 v SQL授权用户授权用户 2安全认证模式安全认证模式v Windows身份验证模式身份验证模式 v 混合身份验证模式混合身份验证模式 Windows身份验证模式v允许允许Windows操作系统用户连接到操作系统用户连接到SQL Server。v当使用当使用Windows身份验证模式时,用户身份验证模式时,用户必须首先登录到必须首先登录到Windows操作系统中,操作系统中,然后再登录到然后再登录到SQL Server。v一般推荐使用一般推荐使用Windows验证模式,因为验证模式,因为这种安全模式能够与这种安全模式能够与Windows操作系统操作系统的安全系统集成在一起,以提供更多的安的安全系统集成在一起,以提供更多的安全功能。全功能。 混合模式v混合身份验证模式表示混合身份验证模式表示SQL Server允许允许Windows授权用户和授权用户和SQL授权用户登录授权用户登录到到SQL Server数据库服务器。数据库服务器。v如果希望允许非如果希望允许非Windows操作系统的用操作系统的用户也能登录到户也能登录到SQL Server数据库服务器数据库服务器上,则应该选择混合身份验证模式。上,则应该选择混合身份验证模式。v如果在混合身份验证模式下选择使用如果在混合身份验证模式下选择使用SQL授权用户登录授权用户登录SQL Server数据库服务器数据库服务器上,则用户必须提供登录名和密码两部分上,则用户必须提供登录名和密码两部分内容。内容。设置身份验证模式设置身份验证模式v可以根据系统的实际应用情况设置可以根据系统的实际应用情况设置SQL Server的身份验证模式。的身份验证模式。v在企业管理器中设置身份验证模式的步骤:在企业管理器中设置身份验证模式的步骤:在要设置身份验证模式的服务器名上单击鼠标右键,在弹出的菜单上选择“属性”命令。在所示的窗口中选择“安全性”选项卡。 10.3 管理SQL Server登录账户 v10.3.1 系统内置的登录账户系统内置的登录账户 v10.3.2 建立登录账户建立登录账户v10.3.3 修改登录账户的属性修改登录账户的属性v10.3.4 删除登录账户删除登录账户 10.3.1 系统内置的登录账户vBUILTINAdministrators: 表示所有表示所有Windows Adiminstrators组中的用户都可组中的用户都可以登录到以登录到SQL Server。此组中的成员同时也具。此组中的成员同时也具有有SQL Server的系统管理员权限。的系统管理员权限。vsa:SQL Server身份验证模式的系统管理员账身份验证模式的系统管理员账户。户。v域名域名Adiminstrator:Windows的系统管理的系统管理员同时也是员同时也是SQL Server的合法用户,且具有的合法用户,且具有SQL Server的系统管理员权限。的系统管理员权限。10.3.2 建立登录账户v展开展开“安全性安全性”,单,单击击“登录登录”节点。节点。v右击内容窗格中的空右击内容窗格中的空白处,从弹出式菜单白处,从弹出式菜单中选择中选择“新建登录新建登录”命令。命令。 10.3.3 修改登录账户的属性 v展开展开“安全性安全性”,单击,单击“登录登录”节点。节点。v在右边的内容窗格中,右击想要修改密码的登录账在右边的内容窗格中,右击想要修改密码的登录账户,从弹出的菜单中选择户,从弹出的菜单中选择“属性属性”命令命令。v可以进行如下更改:可以进行如下更改:更改密码更改默认数据库更改显示给用户所使用的语言10.3.4 删除登录账户 v展开展开“安全性安全性”节点,单击节点,单击“登录登录”节点。节点。v在右边的内容窗格中,右击想要删在右边的内容窗格中,右击想要删除的登录账户,从弹出的菜单中选除的登录账户,从弹出的菜单中选择择“删除删除”命令或按命令或按Delete键。键。10.4 管理数据库用户 v10.4.1 建立数据库用户建立数据库用户 v10.4.2 删除数据库用户删除数据库用户 10.4.1 建立数据库用户v单击要建立数据单击要建立数据库用户的数据库库用户的数据库节点,右击节点,右击“用用户户”,v在弹出的菜单上在弹出的菜单上选择选择“新建数据新建数据库用户库用户”命令。命令。 10.4.2 删除数据库用户 v展开要删除用户的数据库。展开要删除用户的数据库。v单击单击“用户用户”,然后在右边的内容窗,然后在右边的内容窗格中右击想要删除的数据库用户,从格中右击想要删除的数据库用户,从弹出的菜单中选择弹出的菜单中选择“删除删除”命令。命令。 10.5 管理权限 v10.5.1 SQL Server权限种类权限种类v10.5.2 权限的管理权限的管理10.5.1 SQL Server权限种类v对象创建权对象创建权 用户创建数据库中表、视图等对象的权限。用户创建数据库中表、视图等对象的权限。v数据操作权数据操作权 对数据库中数据的操作权限,一般是指对表、视图对数据库中数据的操作权限,一般是指对表、视图中的数据进行查询、增加、删除和修改的权限。中的数据进行查询、增加、删除和修改的权限。 v隐含权限隐含权限 指由指由SQL Server预定义的服务器角色、数据库预定义的服务器角色、数据库角色、数据库拥有者和数据库对象拥有者所具有的角色、数据库拥有者和数据库对象拥有者所具有的权限,隐含权限相当于内置权限,不需要再明确地权限,隐含权限相当于内置权限,不需要再明确地授予这些权限。授予这些权限。 10.5.2 权限的管理v授予权限授予权限:允许用户或角色具有某种操作:允许用户或角色具有某种操作权。权。v收回权限收回权限:不允许用户或角色具有某种操:不允许用户或角色具有某种操作权,或者收回曾经授予的权限。作权,或者收回曾经授予的权限。v拒绝权限拒绝权限:拒绝某用户或角色具有某种操:拒绝某用户或角色具有某种操作权,既使用户或角色由于继承而获得这作权,既使用户或角色由于继承而获得这种操作权,也不允许执行相应的操作。种操作权,也不允许执行相应的操作。使用企业管理器管理数据操作权限 v展开展开“数据库数据库”节点并展开要设置权限的数据库,单击节点并展开要设置权限的数据库,单击“用户用户”节点。节点。v在内容窗格中右击要设置权限的数据库用户,从弹出的菜在内容窗格中右击要设置权限的数据库用户,从弹出的菜单中选择单中选择“所有任务所有任务”下的下的“管理权限管理权限”命令命令 。授予权限拒绝权限收回权限使用T-SQL语句管理数据操作权限 vGRANT:授予权限;:授予权限;vREVOKE:收回权限;:收回权限;vDENY:拒绝权限。:拒绝权限。 语法格式v授权语句授权语句 GRANT 操作权限名 , ON 表名 | 视图名 TO 数据库用户名 | 用户角色名 , v收权语句收权语句 REVOKE 操作权限名 , ON 表名 | 视图名 FROM 数据库用户名 | 用户角色名 , v拒绝语句拒绝语句 DENY 操作权限名 , ON 表名 | 视图名 TO 数据库用户名 | 用户角色名 , 示例v例例1为用户为用户user1授予授予Student表的查询权。表的查询权。 GRANT SELECT ON Student TO user1v例例2为用户为用户user1授予授予SC表的查询和插入权。表的查询和插入权。 GRANT SELECT,INSERT ON SC TO user1v例例3收回用户收回用户user1对对Student表的查询权。表的查询权。 REVOKE SELECT ON Student FROM user1v例例4拒绝拒绝user1用户具有用户具有SC表的更改权。表的更改权。 DENY UPDATE ON SC TO user1 使用企业管理器管理对象创建权限 v展开展开“数据库数据库”,右击要设置语句权限的数据库,右击要设置语句权限的数据库,从弹出的菜单中选择从弹出的菜单中选择“属性属性”,在弹出的窗口中,在弹出的窗口中,选择选择“权限权限”标签页。标签页。 使用T-SQL语句管理对象创建权限 v授权语句授权语句 GRANT 对象权限名 , TO 数据库用户名 | 用户角色名 , v收权语句收权语句 REVOKE 对象权限名 , FROM 数据库用户名 | 用户角色名 , v拒绝语句拒绝语句 DENY 对象权限名 , TO 数据库用户名 | 用户角色名 , 示例v例例1授予授予user1具有创建数据库表的权限。具有创建数据库表的权限。 GRANT CREATE TABLE TO user1v例例2授予授予user1和和user2具有创建数据库表和具有创建数据库表和视图的权限。视图的权限。 GRANT CREATE TABLE, CREATE VIEW TO user1, user2v例例3收回授予收回授予user1创建数据库表的权限。创建数据库表的权限。 REVOKE CREATE TABLE FROM user1v例例4拒绝拒绝user1创建视图的权限。创建视图的权限。 DENY CREATE VIEW TO user110.6 角色 v为为便便于于对对用用户户及及权权限限的的管管理理,可可以以将将一一组组具具有有相相同同权权限限的的用用户户组组织织在在一一起起,这这一一组组具具有有相相同同权权限限的的用用户户就就称称为为角角色色(Role)。)。vSQL Server 2000中,角色分为中,角色分为: 固定的服务器角色固定的数据库角色用户自定义的角色 固定的服务器角色固定的服务器角色描述sysadmin可在可在SQL ServerSQL Server中进行任何活动。该角色的权限包中进行任何活动。该角色的权限包含了所有其它固定的服务器角色的权限。含了所有其它固定的服务器角色的权限。serveradmin配置服务器范围的设置。配置服务器范围的设置。setupadmin添加和删除链接服务器,并执行某些系统存储过程添加和删除链接服务器,并执行某些系统存储过程(如(如 sp_serveroptionsp_serveroption)。)。securityadmin管理服务器登录账户。管理服务器登录账户。processadmin管理在管理在 SQL Server SQL Server 实例中运行的进程。实例中运行的进程。dbcreator创建、更改和删除数据库。创建、更改和删除数据库。diskadmin管理磁盘文件。管理磁盘文件。bulkadmin执行执行 BULK INSERT BULK INSERT 语句。语句。添加固定的服务器角色的成员 v展开展开“安全性安全性”节点,单击节点,单击“服务器角色服务器角色”,在,在右边的内容窗格中,在要添加成员的固定的服务右边的内容窗格中,在要添加成员的固定的服务器角色上右击鼠标,在弹出的菜单中选择器角色上右击鼠标,在弹出的菜单中选择“属性属性”命令。命令。v单击单击“添加添加”按钮。按钮。 删除固定的服务器角色成员 v选择要删除的登录账户,单击选择要删除的登录账户,单击“删除删除”按按钮。钮。 固定的数据库角色 固定的数据库角色固定的数据库角色描述描述db_ownerdb_owner在数据库中拥有全部权限。在数据库中拥有全部权限。db_accessadmindb_accessadmin可以添加或删除用户可以添加或删除用户IDID。 db_securityadmindb_securityadmin可以管理数据库角色和角色成员,并管理数据库中的语可以管理数据库角色和角色成员,并管理数据库中的语句权限和对象权限。句权限和对象权限。db_ddladmindb_ddladmin可建立、修改和删除数据库对象可建立、修改和删除数据库对象db_backupoperatordb_backupoperator可以进行数据库备份、恢复操作可以进行数据库备份、恢复操作db_datareaderdb_datareader可以查询数据库中所有用户表中的数据。可以查询数据库中所有用户表中的数据。db_datawriterdb_datawriter可以更改数据库中所有用户表中的数据。可以更改数据库中所有用户表中的数据。db_denydatareaderdb_denydatareader不允许查询数据库中所有用户表中的数据。不允许查询数据库中所有用户表中的数据。db_denydatawriterdb_denydatawriter不允许更改数据库中所有用户表中的数据不允许更改数据库中所有用户表中的数据publicpublic默认不具有任何权限,但用户可对此角色进行授权默认不具有任何权限,但用户可对此角色进行授权添加固定的数据库角色的成员 v展开展开“数据库数据库”节点,节点,展开要操作的数据库,展开要操作的数据库,单击单击“角色角色”,v右击右边内容窗格中要右击右边内容窗格中要添加成员的数据库角色添加成员的数据库角色在弹出的菜单中选择在弹出的菜单中选择“属性属性”命令。命令。 v单击单击“添加添加”。删除数据库角色的成员 v选择要删除的用户,单击选择要删除的用户,单击“删除删除”按钮。按钮。 10.6.3 用户自定义的角色 v用户自定义的角色属于数据库一级的用户自定义的角色属于数据库一级的角色。角色。v用户可以根据实际的工作职能情况定用户可以根据实际的工作职能情况定义自己的一系列角色,并给每个角色义自己的一系列角色,并给每个角色授予合适的权限。授予合适的权限。 v用户自定义角色的成员可以是数据库用户自定义角色的成员可以是数据库的用户,也可以是用户定义的角色。的用户,也可以是用户定义的角色。 建立用户自定义的角色 v展开展开“数据库数据库”,并展开要添加用户自定义角色的数据库。,并展开要添加用户自定义角色的数据库。v右击右击“角色角色”节点,选择节点,选择“新建数据库角色新建数据库角色”命令。命令。 为用户定义的角色授权v展开要操作的用户自定义展开要操作的用户自定义角色所在的数据库。角色所在的数据库。v右击右击“角色角色”节点,在右节点,在右边的内容窗格中,右击要边的内容窗格中,右击要授予权限的用户自定义的授予权限的用户自定义的角色,在弹出的菜单中选角色,在弹出的菜单中选择择“属性属性”命令。命令。v单击单击“权限权限” 按钮。按钮。添加和删除用户自定义角色的成员 v同固定的数据库角色添加和删除成员同固定的数据库角色添加和删除成员的过程。的过程。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号