《实验报告4数据库的安全与权限.doc》由会员分享,可在线阅读,更多相关《实验报告4数据库的安全与权限.doc(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验报告4数据库的安全与权限山西大学计算机与信息技术学院实验报告姓 名许小珍学 号专业班级软件一班课程名称数据库实验日期2012。04.24成 绩指导教师庞继芳批改日期实验名称数据库的安全与权限一、 实验目的:理解SQL Server身份验证模式;学会创建和管理登录帐户和用户帐户;学会创建和管理服务器角色和数据库角色;学会授予、拒绝和撤销权限的方法。二、 实验内容:设置验证模式,熟悉系统登录验证过程;登录管理;用户管理;角色管理;权限管理三、 实验步骤:SQL Server 的安全管理一、两个安全性阶段在SQL Server2005中工作时,用户要经过两个安全性阶段:身份验证和权限验证(授权)
2、。每个用户必须通过登录账户建立自己的连接能力(身份验证),以获得对SQL Server2005实例的访问权限.然后,该登录必须映射到用于控制在数据库中所执行的活动(权限验证)的SQL Server用户账户。如果数据库中没有用户账户,则即使用户能够连接到SQL Server实例,也无法访问数据库.二、两种安全验证模式SQL Server 提供了两种安全验证模式,即Windows身份验证模式和混合身份验证模式(也称SQL Server身份验证模式),数据库设计者和数据库管理员可以根据实际情况进行选择。1、Windows身份验证模式Windows身份验证模式是指用户通过Windows用户账户连接到S
3、QL Server,即用户身份由Windows系统来验证。SQL Server使用Windows操作系统中的信息验证账户名和密码.这是默认的身份验证模式,比混合验证模式安全得多。一般情况下,客户机都支持混合信任连接,建议使用Windows身份验证方式.使用Windows身份验证有如下特点.(1)Windows验证模式下由Windows管理登录账户,数据库管理员主要是使用该账户。(2)Windows有功能很强的工具与技术去管理用户的登录账户.(3)可以在SQL Server中增加用户组,可以使用用户组。2、混合身份验证模式(也称SQL Server身份验证模式)混合身份验证模式允许用户使用Win
4、dows身份和SQL Server身份进行连接。通过Windows登录账户连接的用户可以使用Windows验证的受信任连接。当用户使用指定的登录名称和密码进行非信任连接时,SQL Server检测输入的登录名和密码是否与系统表syslogins中记录的情况相同,据此进行身份验证。如果不存在该用户的登录账户,则身份验证失败.用户只有提供正确的登录名和密码,才能通过SQL Server的验证。混合身份验证模式有如下特点。(1)混合模式允许非Windows客户、Internet客户和混合的客户组连接到SQL Server中。(2)增加了完全性方面的选择。如果必须选择“混合身份验证模式”并要求使用SQ
5、L登录以适应旧式应用程序,则必须为所有SQL账户设置强密码。这对于属于sysadmin角色的账户(特别是sa账户)尤其重要。3、设置验证模式安装SQL Server2005默认的是Windows身份验证模式。系统管理员在management studio中有两种设置方法(参看实验指导),均需要重新启动SQL Server后,才能生效。三、登录管理1、系统管理员登录账户SQL Server有两个默认的系统管理员登录账户:sa和administrators。这两个登录账户具有SQL Server系统和所有数据库的全部权限。在安装SQL Server之后,自动创建的登录标识符只有系统管理员sa账户和
6、administrators账户,administrators是Windows系统的系统管理员组。sa是一个特殊的登录名,它代表SQL Server身份验证机制下SQL Server的系统管理员,sa始终关联dbo(dbo是默认的用户账号,就是指数据库的创建者)数据库用户,并且没有为sa指定口令。这意味着如果 SQL Server身份验证模式,任何得知这个SQL Server存在的人都可以登录到SQL Server上,并且可以做任意操作。为安全起见,在安装SQL Server后,应尽快地给系统管理员账户指定口令。为SQL Server系统管理员指定口令的步骤如下.(1)在“对象资源管理器窗口中
7、某数据库引擎下.(2)分别展开“安全性、“登录名”节点,查看所有当前存在的登录标示符,系统管理员账户sa应包含在其中。(3)右击sa,然后选择“属性”项,系统弹出“登录属性窗口。(4)在“密码一栏中输入新的口令,并在“确认密码一栏再次输入相同“密码”。(5)在“默认数据库”一栏输入sa默认使用的数据库。(6)单击“确定”按钮,系统关闭对话框,这样完成了为系统管理员设置新口令操作。2、使用management studio 管理SQL Server登录账户在management studio中能方便地创建、查看、修改、删除登录账户.有如下两种方式创建SQL Server登录账户(1和2)。(1)
8、映射Windows登录账户为SQL Server登录账户 在management studio中可以将一个Windows账户或一个组映射成一个SQL Server登录名。每个SQL Server登录名都可以在指定的数据库中创建数据库用户名。这个特性可以让Windows组中的用户直接访问服务器上的数据库。至于这些指定的数据库用户的权限,可以另行指定的。提示:Windows账户应是已经存在的。具体步骤(参看实验指导)。(在用户映射选项卡中,选定某数据库后用户名默认与登录名一样,也可设定为不一样的。)(2)在management studio中创建SQL Server登录账户提示:首先需将验证模式设
9、置为SQL Server验证模式,(在用户映射选项卡中,选定某数据库后用户名默认与登录名一样,也可设定为不一样的。)注意:在创建登录名时,在点击“新建登录名”后,进入“登录名新建对话框时,选择的默认数据库要与用户映射选项卡中选择的数据库一致,再去掉“强制实施密码策略”的对勾即可创建成功。在通过新创建的登录名连接SQL Server后,会发现只能访问和打开所选的数据库,而其他数据库无法访问和打开.(3)在Management Studio中查看、修改或删除登录账户四、用户管理用户是基于数据库的名称,是和登录账户相关联的。1、登录名与数据库用户名的关系登录名、数据库用户名是SQL Server中两
10、个容易混淆的概念。登录名是访问SQL Server的通行证.每个登录名的定义存放在master数据库的表syslogins(登录名是服务器级的)中.登录名本身并不能让用户访问服务器中的数据库资源。要访问具体数据库中的资源,还必须有该数据库的用户名。新的登录创建以后,才能创建数据库用户,数据库用户在特定的数据库内创建,必须和某个登录名相关联。数据库用户的定义信息存放在与其相关的数据库的sysusers表(用户名是数据库级的)中的,这个表包含了该数据库的所有用户对象以及和它们相对应的登录名的标识。用户名没有密码和它相关联,大多数情况下,用户名和登录名使用相同的名称,数据库用户名主要用于数据库权限的
11、控制。就如同企业门口先刷卡进入(登录服务器),然后再拿钥匙打开自己的办公室(进入数据库)一样.数据库用户创建后,通过授予用户权限来指定用户访问特定对象的权限。用户用一个登录名登录SQL Server,以数据库用户的身份访问服务器上的数据库。当一个登录账户试图访问某个数据库时,SQL Server将在库中的sysusers表中查找对应的用户名,如果登录名不能映射到数据库的某个用户,系统尝试将该登录名映射成guest用户,如果当前数据库不许可guest用户,这个用户访问数据库将失败.在SQL Server中,登录账户和数据库用户是SQL Server进行权限管理的两种不同的对象。一个登录账户可以与
12、服务器上的所有数据库进行关联,而数据库用户是一个登录账户在某数据库中的映射,也即一个登录账户可以映射到不同的数据库,产生多个数据库用户(但一个登录账户在一个数据库至多只能映射一个数据库用户),一个数据库用户只能映射到一个登录账户。允许数据库为每个用户分配不同的权限,这一特性为在组内分配权限提供了最大的自由度与可控性。2、使用Management Studio管理数据库用户管理数据库用户包括对数据库的创建、查看、修改、删除等管理操作.首先如何创建数据库用户呢?一般有两种方法。一种是在创建登录帐户的同时指定该登录帐户允许访问的数据库,同时生成该登录帐户在数据库中的用户。如前面使用Managemen
13、t Studio创建登录帐户时就能完成数据库用户的创建;另一种方法是先创建登录帐户,再将登录帐户映射到某数据库,在其中创建同名用户名(具体步骤参看实验指导)。五、权限管理 设置安全验证模式-Windows身份验证模式默认的系统管理员登录账户:administrators。 Windows身份 混合身份验证模式 SQL Server身份默认的系统管理员登录账户:sa创建SQL Server登录账户映射Windows登录账户为SQL Server登录账户 将验证模式设置为SQL Server验证模式,在management studio中创建SQL Server登录账户数据库A1- 用户名a1 用
14、户名b登录名a 1 数据库B1- 用户名a 1 用户名b登录名b 数据库C1 用户名a 用户名b1. 验证模式安装SQL Server 2005默认的是Windows身份验证模式。可能使用Management Studio工具来设置验证模式,但设置验证模式的工作只能由系统管理员来完成,以下是在Management Studio中的两种设置方法,以下两种方法均需要重新启动SQL Server后,才能生效。 方法之一:(1)打开Management Studio.(2)在“已注册的服务器”子窗口中要设置验证模式的服务器上单击鼠标右键,然后在弹出的快捷菜单上选择“属性”项,系统弹出“编辑服务器注册属
15、性”窗口。(3)在“常规”选项卡中,“服务器名称”栏按“服务器角色,显示当前数据库服务器的所有服务器角色,再要添加或删除成员的某固定服务器角色上单击鼠标右键,选择快捷菜单中的“属性”菜单项。在“服务器角色属性”对话框中,能方便单击“添加”或“删除”按钮实现对成员的添加或删除。法二:打开Management Studio,用鼠标单击”对象资源管理器“窗口-某数据库引擎-”安全性“-”登录名“;在某登录名上右击,选择属性“菜单项,出现”登陆属性“对话框或单击新建登录名“出现”登陆-新建”对话框;单击“服务器角色”选项卡,能直接多项选择登陆名需要属于的固定服务器角色。这样也完成了对固定服务器角色成员
16、的添加与删除。用户定义的角色(1)数据库角色创建、修改与删除 数据库角色的创建、修改与删除操作可以通过Management Studio或TSQL两种方法来操作。在Management Studio中创建、修改与删除数据库角色: 打开Management Studio,用鼠标单击”对象资源管理器“窗口-某数据库引擎”数据库“某具体数据库-”安全性“-”角色“数据库角色”,显示当前数据库的所有数据库角色,在”数据库角色“目录或某数据库角色上单击鼠标右键,单击快捷菜单中的新建数据库据角色“菜单项。在数据库角色新建“对话框中,指定角色名称与所有者,单击”确定“按钮即简单创建了新的数据库角色。 在某数
17、据库角色上单击鼠标右键,单击快捷菜单中的”属性“菜单项。在”数据库角色属性“对话框中,查阅或修改角色信息。 在某自定义数据库角色上单击鼠标右键,单击快捷菜单中的“删除”菜单项。启动“删除对象来删除数据库角色.但要注意:角色必须为空时才能删除.(2)数据库角色成员的添加与删除 数据库角色成员的添加及与删除操作可以通过Management Studio或T-SQL两种方法来操作。 在Management Studio中添加与删除数据库角色成员:方法一:在上面提到过的某数据库角色的“数据库角色属性“对话框中,“常规”选线卡上,右下角色成员操作区,单击“添加”或“删除”按钮实现操作。方法二:通过“对象
18、资源管理器”窗口-某数据库引擎-“数据库”“某具体数据库”“安全性”用户”某具体用户;单击鼠标右击,单击“属性”菜单,出现“数据库用户对话框,在右下角色成员操作区,通过多选按钮直接实现该用户从某个或某些数据库角色中添加或删除的操作功能。应用程序角色 在Management Studio中创建与删除数据库程序角色: 通过“对象资源管理器”窗口-数据库引擎”-数据库-”某具体数据库”安全性”角色-应用程序角色”;单击油表有机,单击“新建应用程序角色菜单项,出现“应用程序角色新建”对话框,在”常规“选项卡右边指定角色名称默认架构、密码、确认密码、角色拥有的架构等信息后,单击”确定“按钮即可。当然在创
19、建应用程序角色的同时,可以指定”安全对象“、”扩展属性“选项卡中的属性。 在已有某应用程序角色上单击鼠标右键,再单击“删除”菜单项,能实现角色的删除操作。3. 权限管理1)在Management Studio中管理权限 在Management Studio中管理权限是非常方便的,可以从权限相关的主体与安全对象这两者的任意一方出发考虑实现操作。2)在Management Studio中管理凭据(1)创建凭据 在对象资源管理器中,展开“安全性,右击“凭据,然后单击“新建凭据”项。 在“新建凭据” 对话框中的“凭据名称框中,输入凭据的名称。 在“标识”框中,输入对于对外连接的账户名称(在离开SQL
20、Server的上下文时)。通常为Windows用户账户.但标识可以是其他类型的账户。 在“密码”和“确认密码”框中,输入“标识”框中指定的账户的密码。如果“标识”为Windows用户账户,则密码为Windows密码.如果不需要密码,“密码可为空。 单击“确定”按钮。(2)将登录名映射到凭据 在对象资源管理器中,展开“安全性”,右击SQL Server登录名,然后单击“属性”项. 在“登录属性”对话框的“常规”页的“凭据”框中,输入凭据的名称,然后单击“确定按钮。四、 结果分析 1。 在SQL Server2005中工作时,用户要经过两个安全性阶段:身份验证和权限验证(授权)。每个用户必须通过登
21、录账户建立自己的连接能力(身份验证),以获得对SQL Server2005实例的访问权限。然后,该登录必须映射到用于控制在数据库中所执行的活动(权限验证)的SQL Server用户账户. 2.SQL Server 提供了两种安全验证模式,即Windows身份验证模式和混合身份验证模式(也称SQL Server身份验证模式),数据库设计者和数据库管理员可以根据实际情况进行选择。 3。当用户使用指定的登录名称和密码进行非信任连接时,SQL Server检测输入的登录名和密码是否与系统表syslogins中记录的情况相同,据此进行身份验证。如果不存在该用户的登录账户,则身份验证失败。用户只有提供正确
22、的登录名和密码,才能通过SQL Server的验证。 4。SQL Server有两个默认的系统管理员登录账户:sa和administrators。这两个登录账户具有SQL Server系统和所有数据库的全部权限。5. 设置登录名与用户名时有三种不同的方法.6. 在用户映射选项卡中,选定某数据库后用户名默认与登录名一样,也可设定为不一样的。7.在创建登录名时,在点击“新建登录名后,进入“登录名-新建”对话框时,选择的默认数据库要与用户映射选项卡中选择的数据库一致,再去掉“强制实施密码策略”的对勾即可创建成功.在通过新创建的登录名连接SQL Server后,会发现只能访问和打开所选的数据库,而其他数据库无法访问和打开。 教 师评 语框架三层,局部为二层钢构。本工程外脚手架采用落地式钢管脚手架,外架随主体结构上升,同步搭设,比操作面高出一步,确保主体及外装修的正常安全施工。