数据库的安全性管理

上传人:feng****ing 文档编号:65512468 上传时间:2022-03-24 格式:DOC 页数:23 大小:830.50KB
返回 下载 相关 举报
数据库的安全性管理_第1页
第1页 / 共23页
数据库的安全性管理_第2页
第2页 / 共23页
数据库的安全性管理_第3页
第3页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库的安全性管理第10 章 数据库的安全性管理教学目标:掌握 SQL Sever 的安全机制,了解登录和用户的概念,掌握权限管理和掌 握角色管理。通过本章的学习,要求读者深入理解 SQL Server 的安全机制,以 及掌握常用的管理操作,培养良好的数据库安全意识以及制定合理的数据库安 全策略。建立 C/S 结构的网络数据库概念,锻炼实际数据库管理能力,为今后 从事数据库管理员( DBA )的工作奠定基础。10.1 SQL Server 的安全性机制在介绍安全管理之前,首先看一下 SQL Server 是如何保证数据库安全性 的,即了解 SQL Server 安全机制。10.1.1 权限层次机制SQL Server 2005 的安全性管理可分为 3个等级: 1、操作系统级; 2、SQL Server 级 3、数据库级。10.1.2 操作系统级的安全性在用户使用客户计算机通过网络实现 SQL Server 服务器的访问时, 用户首 先要获得计算机操作系统的使用权。一般说来,在能够实现网络互联的前提下, 用户没有必要向运行 SQL Server 服务器的主机进行登录,除非 SQL Server 服务器就运行在本地计算机上。 SQL Server 可以直接访问网络端口, 所以可以实现对 Windows NT 安全体系以外的 服务器及其数据库的访问,操作系统安全性是操作系统管理员或者网络管理员的任务。由于 SQL Server 采用了集成 Windows NT 网络安全性机制,所以使得操作系统安全性的 地位得到提高,但同时也加大了管理数据库系统安全性的灵活性和难度。10.1.3 SQL Server 级的安全性SQL Server 的服务器级安全性建立在控制服务器登录帐号和口令的基础第 10 章 数据库的安全性管理3上。 SQL Server 采用了标准 SQL Server 登录和集成 Windows NT 登录两种方 式。无论是使用哪种登录方式,用户在登录时提供的登录帐号和口令,决定了 用户能否获得 SQL Server 的访问权,以及在获得访问权以后,用户在访问 SQL Server 时可以拥有的权利。10.1.4 数据库级的安全性在用户通过 SQL Server 服务器的安全性检验以后,将直接面对不同的数据 库入口这是用户将接受的第三次安全性检验。在建立用户的登录帐号信息时,SQL Server会提示用户选择默认的数据库。 以后用户每次连接上服务器后,都会自动转到默认的数据库上。对任何用户来 说master数据库的门总是打开的,设置登录账号时没有指定默认的数据库,则 用户的权限将局限在 master数据库以内。在默认的情况下只有数据库的拥有者才可以访问该数据库的对象, 数据库的 拥有者可以分配访问权限给别的用户,以便让别的用户也拥有针对该数据库的 访问权利,在 SQL Server 中并不是所有的权利都可以转让分配的。10.2 登录和用户现在从登录和用户开始,讲解 SQL Server 2005的安全性管理,本节主要讲 解登录和用户的基本概念、登录验证模式及其创建登录和用户的操作步骤。10.2.1 登录身份验证模式及其设置首先介绍两个概念:用户和登录。用户连接到 SQL Server 账户都称 SQL Server 的登录:用户是为特定数据库定义的,要创建用户,你必须已经定义了 该用户的登录,用户 ID 同登录类似,但是它的名称不需要与登录相同。用户可以防止数据库被未授权的用户故意或无意地修改。SQL Server为每一用户分配了唯一的用户名和密码。可以为不同账号授予不同的安全级别。对于访问SQL Server的登录,有两种验证模式: Windows身份验证和混合 模式身份验证。在 Windows身份验证中,SQL Server依赖于 Windows操作系 统提供登录安全性,SQL Server检验登录是否被 Windows验证身份,并根据这一验证来允许访问。SQL Server将自己的登录安全过程同 Windows登录安全 过程结合起来提供安全登录服务。网络安全性通过同Windows提供复杂加密过 程进行验证。用户登录一旦通过操作系统的验证,访问 SQL Server就不再需要 其它的身份验证。如果连接来自一个不安全的系统, 我们还可以使用混合模式身份验证,SQLServer将验证登录的身份,即通过用户提供的登录名和与预先存储在数据库中 的登录名和密码进行比较来完成身份验证。下面我们看一看如何在SSMS中设置身份验证模式。(1)打开SSMS并连接到目标服务器,在【资源管理器】窗口中,在目标服务器上单击鼠标右键,弹出快捷菜单,从中选择“属性”命令,如图10.1所示。对象资游育理器连接(靳i ,T日d-Li数据库a m系蜿数据1+ j Morthwind+ pubsIS二安全性曰立這录名雋 BUILTA M1-1丄服务器角 电 bJlc 鱼 dbcrei * diskad 傀 proca 塩setUF崎scrveradniin 筈 setijpadmin 饨 sysadminS D服莎需对象YT (SQL Server B.启动 停止(D 暂停继续 重新启动(刷新迥田丄皐制 _j管理S Ji 5QL Server 代理图10.1利用对象资源管理器设置身份验证模式(2)出现【服务器属性】窗口,选择【选择页】中的“安全性”选项,进入安全性设置页面,如图10.2所示1-Hv.rLrKft *54* 5crm nwiagETn ieirt 54ubu-J5.列图10.2服务器属性窗口的安全性页面(3) 在“服务器身份验证”选项级中选择验证模式前的单选按钮,选中需 要的验证模式。用户还可以在“登录审核”选项级中设置需要的审核方式,如 图10.3所示。审核方式取决于安全性要求,这四种审核级别的含义如下。“无”:不使用登录审核。“仅限失败的登录”:记录所有的失败登录。“仅限成功的登录”:记录所有的成功登录。“失败和成功的登录”:记录所有的登录。图10.3服务器属性最后单击“确定”按钮,完成登录验证模式的设置。创建登录登录属于服务器级的安全策略,要连接到数据库,首先要存在一个合法的登 录。在SSMS中创建登录的步骤如下。(1) 打开SSMS并连接到目标服务器,在【对象资源管理器】窗口中,单 击“安全性”节点前的“ + ”号,展开安全节点。在“登录名”上单击鼠标右 键,弹出快捷菜单,从中选择“新建登录(N)”命令,如图10.4所示。1IJ J J品S3SS1別象资源管理器V fl X理撤艱 Lj /匚血 YT (5QL Server 8.a.l94 - YTAAcininistratcir)S Lj数据库L uJ安全性图10.4利用对象资源管理器创建登录(2) 出现【登录名】对话框,单击需要创建的登录模式前的单选按钮,选 定验证方式。如图10.5所示,并完成“登录名”、“密码”、“确认密码”和其他 参数的设置。图10.5登录名对话框(3) 选择“选择页”中的“服务器角色”项,出现服务器角色设定页面,如图10.6所示,用户可以为此用户添加服务器角色。图10.6登录名对话框的服务器角色页面(4)选择【登录名】对话框中的“用户映射”项,进入映射设置页面,可 以为这个新建的登录添加映射到此登录名的用户,并添加数据库角色,从而使 该用户获得数据库的相应角色对应的数据库权限。如图10.7所示。-口 X紳円 11F _isE.T ran*.応:*5 I 时图10.7登录名对话框的用户映射页面最后单击“登录名”对话框底部的“确定”按钮,完成登录名的创建创建用户用户是数据库级的安全策略,在为数据库创建新的用户前,必须存在创建用户的一个登录或者使用已经存在的登录创建用户。1 使用 Management Studio创建用户使用Management Studio创建用户的具体步骤如下。(1)打开SSMS并连接到目标服务器,在【对象资源管理器】窗口中,单 击“数据库”节点前的“ + ”号,展开数据库节点。单击要创建用户的目标数 据节点前的“ + ”号,展开目标数据库节点 Northwind。单击“安全性”节点前 的“ + ”号,展开“安全性”节点。在“用户”上单击鼠标右键,弹出快捷菜 单,从中选择“新建用户(N)”命令,如图10.8所示。 | VT (SQL Server 8.0.194 - VTAdministratcr) a 口数据库国lJ系统数据库 j Northwind 丄数据库关采图ll 表+ L视團+ 一i可编程性1丄存储日安全性略用户的田一i角吏刷新(日图10.8利用对象资源管理器创建用户(2)出现【数据库用户新建】对话框,在“常规”页面中,填写“用户 名”,选择“登录名”和“默认架构”名称。添加此用户拥有的架构,添加此用 户的数据库角色。如图10.9所示。图10.9新建数据库用户(3) 在【数据库用户新建】对话框的“选择页”中选择“安全对象”,进 入权限设置页面(即“安全对象”页面),如图10.10所示。“安全对象页面”主 要用于设置数据库用户拥有的能够访问的数据库对象以及相应的访问权限。单 击“添加”按钮为该用户添加数据库对象,并为添加的对象添加显示权限。图10.10数据库用户-新建对话框中的安全对象页面,完成用户创建最后,单击【数据库用户-新建】对话框底部的“确定”第 10 章 数据库的安全性管理1010.3 权限管理权限用于控制对数据库对象的访问,以及指定用户对数据库可以执行的操 作,用户可以设置服务器和数据库的权限。服务器权限允许数据库管理员执行 管理任务,数据库权限用于控制对数据库对象的访问和语句执行。10.3.1 服务器权限服务器权限允许数据库管理员执行任务。这些权限定义在固定服务器角色(Fixed Server Roles)中。这些固定服务器角色可以分配给登录用户,但这些 角色是不能修改的。一般只把服务器权限授给DBA( 数据库管理员 ),他不需要修改或者授权给别的用户登录。我们将在后面讲解角色管理时,详细地介绍服 务器的相关权限和配置。10.3.2 数据库对象权限数据库对象是授予用户以允许他们访问数据库中对象的一类权限, 对象权限 对于使用 SQL 语句访问表或者视图是必须的。在 Microsoft SQL Server Management 2005 中给用户添加对象权限的具体 步骤如下 。(1) 依次单击【对象资源管理器】窗口中树型节点前的“”号,直到展 开目标数据库的“用户”节点为止,如图 10.11所示。在“用户”节点下面的目 标用户上单击鼠标右键,弹出快捷菜单,从中选择“属性( R)”命令。埋撤尅*朝 白IE 3 YT (SQL Server 8.0.194-YTAdmirastiaborEl二数基库1 |_J慕纸數据库-Nor th wind_i数鳴库关丟阴固袤田观副ffi U可蝙程性-_J妥全性r- i J用户土 dbo.* guest會H i_j日J晌晰日3敷曙貝 固LJ表 国观阴 回可骗科 03 5T错 e r亡奉叶图10.11利用对象资源管理器为用户添加对象权限(2) 出现【数据库用户】对话框,选择“选择页”窗口中的“安全对象”项,进入权限设置页面,单击“添加(A)”按钮,如图10.12所示。图10.12数据库用户对话框(3) 出现【添加对象】对话框,如图 10.13所示,单击要添加的对象类别 前的单选按钮,添加权限的对象类别,然后单击“确定”按钮图10.13添加对象对话框(4)出现【选择对象】对话框,如图10.14所示,从中单击“对象类型”按钮。图10.14选择对象对话框(5)出现【选择对象类型】对话框,依次选择需要添加权限的对象类型前的复选框,选中其对象,如图10.15所示。最后单击“确定”按钮。图10.15选择对象类型 对话框(6)回到【选择对象】对话框,此时在该对话框中出现了刚才选择的对象类型,如图10.16所示,单击该对话框中的“浏览(B)”按钮。图10.16选择对象对话框(7)出现【查找对象】对话框,依次选择要添加权限的对象前的复选框, 选中其对象,如图10.仃所示。最后单击“确定”按钮。图10.仃查找对象对话框(8)又回到【选择对象】对话框,并且已包含了选择的对象,如图10.18所示。确定无误后,单击该对话框中的“确定”按钮,完成对象选择操作。图10.18选择对象 对话框(9)又回到【数据库用户】对话框窗口,此窗口中已包含用户添加的对象, 依次选择每一个对象,并在下面的该对象的“显示权限”窗口中根据需要选择“授予/拒绝”列的复选框,添加或禁止对该(表)对象的相应访问权限。设置 完每一个对象的访问权限后,单击“确定”按钮,完成给用户添加数据库对象 权限所有操作,如图10.佃所示。川图10.佃数据库用户对话框数据库权限对象权限使用户能够访问存在于数据库中的对象,除了数据库对象权限外, 还可以给用户分配数据库权限。SQL Server 2005对数据库权限进行了扩充,增 加了许多新的权限,这些数据库权限除了授权用户可以创建数据库对象和进行 数据库备份外,还增加了一些更改数据库对象的权限。在Microsoft SQL Server 2005中给用户添加数据库权限的具体步骤如下。(1)在【对象资源管理器】窗口中,单击服务器前的“+”号,展开服务器节点。单击“数据库”前的“ +”号,展开数据库节点。在要给用户添加数据 库权限的目标数据库上单击鼠标右键,弹出快捷菜单,如图10.20所示,从中选择“属性(R)”命令。-I VT (5QL Server 8.0.19 - VTAdministrafcorJ -一i数据库S 2J累魏数据库ij Nofthwind01+ 田1!+1复制新建数据库(阻新建查询(如搁写数据库胆本为(9 任务重命名(哩删除助刷新(E)图10.20利用对象资源管理器为用户添加数据库权限(2)出现【数据库属性】对话框窗口,选择“选择页”窗口中的“权限”项,进入如图10.21所示的权限设置页面,在该页面的“用户或角色(U)”中选择要添加数据库权限的用户,如果该用户不在列表中,请单击“ 添加(A)”按钮,添加该用户到当前数据库中。然后在该用户的“显示权限(p)”中添图10.21数据库属性对话框的权限页面加相应的数据库权限。最后单击“确定”按钮,完成操作104角色管理第 10 章 数据库的安全性管理16角色用来简化将很多权限分配给用户这一复杂任务的管理。角色允许用户 分组接受同样的数据库权限,而不用单独给每一个用户分配这些权限。用户可 以使用系统自带的角色,也可以创建一个代表一组用户使用的权限角色,然后 把这个角色分配给这个工作组的用户。一般而言,角色是为特定的工作组或者任务分类而设置的,用户可以根据 自己所执行的任务成为一个或多个角色的成员。当然用户可以不必是任何角色 的成员,也可以为用户分配个人权限。10.4.1 固定服务器角色在 SQL Server 安装时就创建了在服务器级别上应用的大量预定义的角色, 每个角色对应着相应的管理权限。这些固定服务器角色用于授权给DBA (数据库管理员)拥有某种或某些角色的 DBA 就会获得与相应角色对应的服务器管理 权限。通过给用户分配固定服务器角色,可以使用户具有执行管理任务的角色权 限。固定服务器角色的维护比单个权限维护更容易些,但是固定服务器角色不 能修改。在 SSMS 中,可以按以下步骤为用户分配固定服务器角色,从而使该用户 获取相应的权限。(1)在【对象资源管理器】中,单击服务器前的“ +”号,展开服务器节 点。单击“安全性”节点前的“ +”号,展开安全性节点。这时在次节点下面可 以看到固定服务器角色,如图 10.22 所示,在要给用户添加的目标角色上单击鼠 标右键,弹出快捷菜单,从中选择“属性(R)”命令。第1017数据库的安全性管理时象费沥昔理器* 3冥|连接裁t也TI- (J H (SQL Server 8.0.194 - YTAdrrwiistrator)吒 bukadmri曾 diskadrriN J 吿 process 咎 securtyadmin 咎 serveradmm 監 satupadmindbcrMb刷新屁性(B)您 sydmin刁一|数恬库l LJ乘统数据障 J NorthiindS pubs 耳二|安全桂El丄登录名逬BUlLTIMAdmriistratarSA阴皮 YTAdmini5tratorE 一j服茗器角色(3 一|晉理+ SQL Server 代理图10.22利用对象资源管理器为用户分配固定服务器角色(2) 出现【服务器角色属性】对话框,如图10.23所示,单击“添加(A)”按钮图10.23服务器角色属性对话框(3) 出现【选择登陆名】对话框,如图 10.24所示,单击“浏览(B)按钮1胆认挥齐*軒对滾绘理也).1k1图10.24选择登录名对话框(4)出现“查找对象”对话框,在该对话框中,选择目标用户前的复选框,选中其用户,如图10.25所示,最后单击“确定”按钮。如图10.26所示,单击“确定”按钮图10.25查找对象对话框(5)回到【选择登陆名】对话框,可以看到选中的目标用户已包含在对话 框中,确定无误后,图10.26选择登录名对话框(6)回到【服务器角色属性】对话框,如图10.27所示。确定添加的用户无误后,单击“确定”按钮,完成为用户分配角色的操作。图10.27服务器角色属性对话框数据库角色在SQL Server安装时,数据库级别上也有一些预定义的角色,在创建每个数据库时都会添加这些角色到新创建的数据库中,每个角色对应着相应的权限。这些数据库角色用于授权给数据库用户,拥有某种或某些角色的用户会获得相应角色对应的权限。可以为数据库添加角色,然后把角色分配给用户,使用户拥有相 应的权限,在SSMS中,给用户添加角色(或者叫做将角色授权用 户)的操作与将固定服务器角色授予用户的方法类似,通过相应角色的属性对话框可以方便的添加用户,使用户成为角色成员。另外,用户也可以使用图形界面工具 Transact-SQL命令创建新 角色,使这一角色拥有某个或某些权限;创建的角色还可以修改其对 应的权限。无论使用哪种方法,用户都需要完成下列任务:a创建新的数据库角色。b分配权限给创建的角色。C将这个角色授予某个用户在SSMS创建新的数据库角色操作的具体步骤如下。(1)展开要添加新角色的目标数据库, 单击目标数据库节点下的“安全性”节点前的“ + ”号,展开此节点。然后在“角色”节点上单击右键,弹出快捷菜单,选择快捷菜单中的“新建”下“ 新建数据库角色”命令,如图10.28所示。对象资源管理器连接回”到二戲名称一J数据库角童 一I应用程序堯角含Y”数据込lam- S YT (SQL 5erver 8.0.194 - YTAdministrator) -一J数据库+ _J丟统数据库-j Northwind_J数据库关系图+ 一J表+ 一J观圉+ 一J可编程性+ _J存储 -一J安全性+1 一J用户-1 -jionj+ cji+ _i刷新(巳- J pubs 一J数据库关系图+表+观图+可编程性+ _J存储 +安全性+ 一J安全性+服务器对象+ 一J复制+管理 SQL Server 代理10.28新建数据库角色(2)出现“数据库角色-新建”对话框,在“常规”页面中,添加“角色名称” 和“所有者”,并选择此角色所拥有的架构。在此对话框中也可以单击“添 加”按钮为新创建的角色添加用户,如图 10.29所示。图10.29数据库角色-新建对话框(3) 选择“选择页”中的“安全对象”项,进入权限设置页面(即“安全对象” 页面),如图10.30所示。接下来的操作就是为新创建的角色添加所拥有的 数据库对象的访问权限。第 10 章 数据库的安全性管理22图 10.30 数据库角色 -新建对话框安全对象页面至此,已经用 10.3节和 10.4节介绍了数据库权限和角色以及它们在SSMS中的创建和管理操作, 关于如何用 T-SQL 语句来实现同样目标的相关内容不再 讲解,留给用户自己学习。10.5 小结结合第1章DBMS的DCL数据库的安全性控制功能,讲解了数据库安全控 制的基本概念; SQL Server 2005的安全体系结构,包括安全控制策略,身份验 证模式,验证模式的设置; SQL Server 2005数据库的安全性管理,包括数据库 系统登录管理中管理模式和管理方法,数据库用户管理的基本概念和方法,数 据库系统角色管理和权限管理。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!