实验09数据库安全管理.docx
- 文档编号:4089606
- 上传时间:2023-05-06
- 格式:DOCX
- 页数:17
- 大小:1.46MB
实验09数据库安全管理.docx
《实验09数据库安全管理.docx》由会员分享,可在线阅读,更多相关《实验09数据库安全管理.docx(17页珍藏版)》请在冰点文库上搜索。
实验09数据库安全管理
实验9:
数据库安全管理
班级:
计算机科学与技术2班学号:
20131602310110姓名:
徐旸
一、实验目的:
1.了解SQLServer2008中的两种用户登录模式;
2.熟悉SQLServer2008中登录账户、用户、角色、权限的概念;
3.掌握SQLServer2008中创建账户、数据库用户的方法,会使用角色来分配权限
二、实验准备:
SQLServer的用户权限控制是SQLServer一个最重要的管理概念,也是众多管理任务之一。
SQLServer的登录方式有标准SQLServer登录和集成Windows系统登录两种。
SQLServer集成的安全登录模式即将Windows系统的用户和工作组映射为SQLServer的登陆账户。
Windows集成登录模式实际上是让Windows系统代替SQLServer执行对登陆审查的任务。
如果要采用SQLServer管理的安全登录模式实现SQLServer服务器的登录连接,用户必须拥有合法的帐号和正确的密码。
由SQLServer系统本身来进行用户的身份验证。
三、实验内容:
本次实验采用SQLServer管理的安全登录模式来连接服务器,也就是要求用户输入账户和密码并且经系统验证通过后方可登录。
1.用SQLServerManagementStudio创建SQLSERVER登录账号
(1)服务器实例名---右键属性---安全性---选择身份验证为"SQLSERVER和Windows",只有这样才能更改登陆方式,.NET应用程序才能够通过SQLSERVER的相应角色的用户名访问数据库。
(2)通过企业管理器创建账号:
安全性---[登陆,右键]---新建登陆帐号---输入账号(帐号为自己的学号)和密码(密码为123456)---选择SQLSERVER身份验证
2.用Transact-SQL管理SQLSERVER账号
(1)创建登录账户
用户可以通过SQLServerManagementStudio或系统提供的存储过程来进行登录账户的创建。
这里使用系统存储过程来创建,创建账户的语法可参见SQLServer2008联机帮助中的相关内容。
下面的例子创建了一个登陆账户:
这个例子创建了一个名为xs,密码是123456,默认数据库为northwind的账户。
在建立用户的登录账户信息时,用户应该选择默认的数据库,以后每次连接上服务器后,系统都会自动转到默认的数据库上。
这里也可以不指定数据库,系统默认为master库。
请同学将上例中的xs账户改为各自学号,建立各自的登录账户,默认数据库为student数据库,密码自行设计。
下面的各个实验均参照示例将xs修改为各自的账户。
(2)修改和删除账户
建立完成的账户信息还可以进行修改。
用户可以使用系统存储过程sp_defaultdb,sp_defaultlanguage来修改默认数据库和默认语言。
例如:
自己创建的数据库是已经建好的数据库名,将你的账户的默认数据库改为该数据库。
(系统默认是‘SimplifiedChinese’,建议使用默认项。
)
返回的结果是:
默认数据库已更改。
xs的默认语言已改为English。
使用系统存储过程sp_password可修改SQLServer的账户密码,如:
该例子修改了xs的账户密码。
要删除SQLServer标准登录账户可以使用系统存储过程sp_droplogin,例如:
在SQLServer中删除账户信息时,有很多限制。
主要有以下几种情况:
1)系统账户sa不能被删除;
2)已经映射到数据库用户上的账户不能被删除;
3)正在使用或连接的账户不能被删除;
4)拥有数据库的账户不能被删除
(3)添加数据库用户
以上的操作只是建立了登录SQLServer的账户,用户登录后还不能对数据库进行访问,将登录账户添加为数据库用户后,使用登录账户登录的SQLServer的用户就可以实现对数据库的访问。
添加数据库用户可通过存储过程sp_grantdbaccess来实现,参照下面的例子将你的账户添加为student(该库是本课程的示例库)的用户。
(4)删除数据库用户
可以使用系统存储过程sp_revokedbaccess来删除数据库用户,更确切地说,是断开SQLServer的登录账户与数据库用户之间的对应关系。
返回结果为:
用户已从当前数据库中除去。
(5)角色
角色是SQLServer引进的用来集中管理数据库或服务器权限的概念。
数据库管理员将数据库的权限赋予角色,然后将角色再赋予给数据库用户或登录账户,从而是数据库用户或登录账户拥有相应的权限。
SQLServer提供了固定服务器角色和数据库角色,用户可以修改固定数据库角色的权限,也可以自己创建新的数据库角色,在分配权限给新的角色。
1)固定服务器角色
使用系统存储过程sp_helpsrvrole可以浏览固定服务器角色的内容。
存储过程sp_addsrvrolemember可以将某固定服务器角色分配给某给定的登录账户。
下面的操作将登录账户xs添加为服务器角色dbcreatord的成员,使其具有创建和修改数据库的权利:
存储过程sp_dropsrvrolemember可以收回分配给某给定的登录账户的指定固定服务器角色。
这个例子收回了分配给登录账户xs的固定服务器角色dbcreator.
2)固定数据库角色
使用系统存储过程sp_helpdbfixedrole可以浏览所有的固定数据库角色的相关内容。
如:
用存储过程sp_addrolemember可将某个登录账户增加到某个固定数据库角色中,从而使该账户拥有指定固定数据库角色所拥有的所有权限。
进行下面的操作给你的账户授予对student库的只读权限,xs换为你的账户名。
同样使用sp_droprolemember可以从某个固定数据库角色中删除指定的登录账户,从而收回分配的对student库的只读权限。
完成所有上面操作以后,断开当前连接,使用本实验创建的个人登录账户登录SQLServer服务器,登录成功后,可以看到当前默认操作数据库为你所在班级的数据库名。
再互相登录到同桌的数据库,查看自己的权限。
四、思考题
1.思考身份验证模式与登录帐号的关系及如何用各种帐号进行登录;
2.登录帐号、数据库用户及数据库角色之间的关系;
3.数据库用户、数据库角色与数据库对象之间的关系,并说出直接对用户授权与间接对用户授权(系统权限与对象权限)的方法;
4.固定服务器角色、固定数据库角色、自定义数据库角色与应用程序角色的区别与验证其权限的方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 09 数据库 安全管理