




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第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 的服务器级安全性建立在控制服务器登录帐号和口令的基础上。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就不再需要其它的身份验证。如果连接来自一个不安全的系统,我们还可以使用混合模式身份验证,SQL Server 将验证登录的身份,即通过用户提供的登录名和与预先存储在数据库中的登录名和密码进行比较来完成身份验证。下面我们看一看如何在SSMS中设置身份验证模式。(1)打开SSMS并连接到目标服务器,在【资源管理器】窗口中,在目标服务器上单击鼠标右键,弹出快捷菜单,从中选择“属性”命令,如图10.1所示。图 10.1利用对象资源管理器设置身份验证模式(2)出现【服务器属性】窗口,选择【选择页】中的“安全性”选项,进入安全性设置页面,如图10.2所示图10.2 服务器属性窗口的安全性页面(3)在“服务器身份验证”选项级中选择验证模式前的单选按钮,选中需要的验证模式。用户还可以在“登录审核”选项级中设置需要的审核方式,如图10.3所示。审核方式取决于安全性要求,这四种审核级别的含义如下。“无”:不使用登录审核。“仅限失败的登录”:记录所有的失败登录。“仅限成功的登录”:记录所有的成功登录。“失败和成功的登录”:记录所有的登录。图10.3 服务器属性最后单击“确定”按钮,完成登录验证模式的设置。10.2.2 创建登录登录属于服务器级的安全策略,要连接到数据库,首先要存在一个合法的登录。在SSMS中创建登录的步骤如下。(1)打开SSMS并连接到目标服务器,在【对象资源管理器】窗口中,单击“安全性”节点前的“”号,展开安全节点。在“登录名”上单击鼠标右键,弹出快捷菜单,从中选择“新建登录(N)”命令,如图10.4所示。图10.4 利用对象资源管理器创建登录(2)出现【登录名】对话框,单击需要创建的登录模式前的单选按钮,选定验证方式。如图10.5所示,并完成“登录名”、“密码”、“确认密码”和其他参数的设置。图10.5 登录名对话框(3)选择“选择页”中的“服务器角色”项,出现服务器角色设定页面,如图10.6所示,用户可以为此用户添加服务器角色。图10.6 登录名对话框的服务器角色页面(4)选择【登录名】对话框中的“用户映射”项,进入映射设置页面,可以为这个新建的登录添加映射到此登录名的用户,并添加数据库角色,从而使该用户获得数据库的相应角色对应的数据库权限。如图10.7所示。图10.7 登录名对话框的用户映射页面最后单击“登录名”对话框底部的“确定”按钮,完成登录名的创建。10.2.3 创建用户用户是数据库级的安全策略,在为数据库创建新的用户前,必须存在创建用户的一个登录或者使用已经存在的登录创建用户。1、使用Management Studio创建用户使用 Management Studio创建用户的具体步骤如下。(1)打开SSMS并连接到目标服务器,在【对象资源管理器】窗口中,单击“数据库”节点前的“”号,展开数据库节点。单击要创建用户的目标数据节点前的“”号,展开目标数据库节点Northwind。单击“安全性”节点前的“”号,展开“安全性”节点。在“用户”上单击鼠标右键,弹出快捷菜单,从中选择“新建用户(N)”命令,如图10.8所示。图 10.8 利用对象资源管理器创建用户(2)出现【数据库用户新建】对话框,在“常规”页面中,填写“用户名”,选择“登录名”和“默认架构”名称。添加此用户拥有的架构,添加此用户的数据库角色。如图10.9所示。图10.9 新建数据库用户(3)在【数据库用户新建】对话框的“选择页”中选择“安全对象”,进入权限设置页面(即“安全对象”页面),如图10.10所示。“安全对象页面”主要用于设置数据库用户拥有的能够访问的数据库对象以及相应的访问权限。单击“添加”按钮为该用户添加数据库对象,并为添加的对象添加显示权限。图 10.10 数据库用户-新建对话框中的安全对象页面最后,单击【数据库用户新建】对话框底部的“确定”,完成用户创建。10.3 权限管理权限用于控制对数据库对象的访问,以及指定用户对数据库可以执行的操作,用户可以设置服务器和数据库的权限。服务器权限允许数据库管理员执行管理任务,数据库权限用于控制对数据库对象的访问和语句执行。10.3.1 服务器权限服务器权限允许数据库管理员执行任务。这些权限定义在固定服务器角色(Fixed Server Roles)中。这些固定服务器角色可以分配给登录用户,但这些角色是不能修改的。一般只把服务器权限授给DBA(数据库管理员),他不需要修改或者授权给别的用户登录。我们将在后面讲解角色管理时,详细地介绍服务器的相关权限和配置。10.3.2 数据库对象权限数据库对象是授予用户以允许他们访问数据库中对象的一类权限,对象权限对于使用SQL语句访问表或者视图是必须的。在Microsoft SQL Server Management 2005中给用户添加对象权限的具体步骤如下 。(1)依次单击【对象资源管理器】窗口中树型节点前的“”号,直到展开目标数据库的“用户”节点为止,如图10.11所示。在“用户”节点下面的目标用户上单击鼠标右键,弹出快捷菜单,从中选择“属性(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.17所示。最后单击“确定”按钮。图10.17 查找对象对话框(8)又回到【选择对象】对话框,并且已包含了选择的对象,如图10.18所示。确定无误后,单击该对话框中的“确定”按钮,完成对象选择操作。图 10.18 选择对象 对话框(9)又回到【数据库用户】对话框窗口,此窗口中已包含用户添加的对象,依次选择每一个对象,并在下面的该对象的“显示权限”窗口中根据需要选择“授予/拒绝”列的复选框,添加或禁止对该(表)对象的相应访问权限。设置完每一个对象的访问权限后,单击“确定”按钮,完成给用户添加数据库对象权限所有操作,如图10.19所示。图10.19 数据库用户对话框10.3.3 数据库权限对象权限使用户能够访问存在于数据库中的对象,除了数据库对象权限外,还可以给用户分配数据库权限。SQL Server 2005对数据库权限进行了扩充,增加了许多新的权限,这些数据库权限除了授权用户可以创建数据库对象和进行数据库备份外,还增加了一些更改数据库对象的权限。在Microsoft SQL Server 2005中给用户添加数据库权限的具体步骤如下。 (1)在【对象资源管理器】窗口中,单击服务器前的“+”号,展开服务器节点。单击“数据库”前的“+”号,展开数据库节点。在要给用户添加数据库权限的目标数据库上单击鼠标右键,弹出快捷菜单,如图10.20所示,从中选择“属性(R)”命令。 图 10.20利用对象资源管理器为用户添加数据库权限(2)出现【数据库属性】对话框窗口,选择“选择页”窗口中的“权限”项,进入如图10.21所示的权限设置页面,在该页面的“用户或角色(U)”中选择要添加数据库权限的用户,如果该用户不在列表中,请单击“添加(A)”按钮,添加该用户到当前数据库中。然后在该用户的“显示权限(p)”中添加相应的数据库权限。最后单击“确定”按钮,完成操作。图10.21 数据库属性对话框的权限页面10.4 角色管理角色用来简化将很多权限分配给用户这一复杂任务的管理。角色允许用户分组接受同样的数据库权限,而不用单独给每一个用户分配这些权限。用户可以使用系统自带的角色,也可以创建一个代表一组用户使用的权限角色,然后把这个角色分配给这个工作组的用户。一般而言,角色是为特定的工作组或者任务分类而设置的,用户可以根据自己所执行的任务成为一个或多个角色的成员。当然用户可以不必是任何角色的成员,也可以为用户分配个人权限。10.4.1 固定服务器角色 在SQL Server安装时就创建了在服务器级别上应用的大量预定义的角色,每个角色对应着相应的管理权限。这些固定服务器角色用于授权给DBA(数据库管理员)拥有某种或某些角色的DBA就会获得与相应角色对应的服务器管理权限。通过给用户分配固定服务器角色,可以使用户具有执行管理任务的角色权限。固定服务器角色的维护比单个权限维护更容易些,但是固定服务器角色不能修改。在SSMS中,可以按以下步骤为用户分配固定服务器角色,从而使该用户获取相应的权限。(1)在【对象资源管理器】中,单击服务器前的“+”号,展开服务器节点。单击“安全性”节点前的“+”号,展开安全性节点。这时在次节点下面可以看到固定服务器角色,如图10.22所示,在要给用户添加的目标角色上单击鼠标右键,弹出快捷菜单,从中选择“属性(R)”命令。图 10.22 利用对象资源管理器为用户分配固定服务器角色(2)出现【服务器角色属性】对话框,如图10.23所示,单击“添加(A)”按钮。图 10.23 服务器角色属性对话框(3)出现【选择登陆名】对话框,如图10.24所示,单击“浏览(B)”按钮。图 10.24 选择登录名对话框(4)出现“查找对象”对话框,在该对话框中,选择目标用户前的复选框,选中其用户,如图10.25所示,最后单击“确定”按钮。图10.25 查找对象对话框(5)回到【选择登陆名】对话框,可以看到选中的目标用户已包含在对话框中,确定无误后,如图10.26所示,单击“确定”按钮。图10.26选择登录名对话框(6)回到【服务器角色属性】对话框,如图10.27所示。确定添加的用户无误后,单击“确定”按钮,完成为用户分配角色的操作。图10.27 服务器角色属性对话框10.4.2 数据库角色 在SQL Server安装时,数据库级别上也有一些预定义的角色,在创建每个数据库时都会添加这些角色到新创建的数据库中,每个角色对应着相应的权限。这些数据库角色用于授权给数据库用户,拥有某种或某些角色的用户会获得相应角色对应的权限。可以为数据库添加角色,然后把角色分配给用户,使用户拥有相应的权限,在SSMS中,给用户添加角色(或者叫做将角色授权用户)的操作与将固定服务器角色授予用户的方法类似,通过相应角色的属性对话框可以方便的添加用户,使用户成为角色成员。另外,用户也可以使用图形界面工具Transact-SQL命令创建新角色,使这一角色拥有某个或某些权限;创建的角色还
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 17481-2025添加剂预混合饲料中氯化胆碱的测定
- 2025广西物流职业技术学院招聘教职人员控制数205人模拟试卷带答案详解
- 2025福建三明机场发展集团有限公司招聘3人模拟试卷有完整答案详解
- 2025贵州贵阳学院高层次人才引进15人考前自测高频考点模拟试题及答案详解(新)
- 2025江苏兴化市招聘教师67人模拟试卷及完整答案详解1套
- 安全培训教师安全职责课件
- 2025年东北农业大学专职辅导员公开招聘16人考前自测高频考点模拟试题及答案详解(网校专用)
- 2025江西吉安市井冈山大学招聘177人考前自测高频考点模拟试题及答案详解(名校卷)
- 2025内蒙古赤峰市克旗银都矿业招聘4人考前自测高频考点模拟试题附答案详解(模拟题)
- 2025年湖南湘西州吉首市石家冲街道卫生服务中心招聘见习生考前自测高频考点模拟试题附答案详解(考试直接用)
- 【生物 黑吉辽蒙版】2025年普通高等学校招生选择性考试(解析版)
- T/CNFAGS 15-2024绿色合成氨分级标准(试行)
- 建筑工程答辩试题及答案
- 综合应用能力b类试卷及真题答案
- 行测资料5000题题库
- 2025-2030中国资产托管行业市场发展分析及前景趋势与投资研究报告
- 小程序租赁协议合同
- 幼儿园科普航空知识课件
- 初中八年级等腰三角形的作业设计
- 大学英语四级单词表
- 肺功能课件完整版本
评论
0/150
提交评论