实验五SQLSERVER完整性与安全性报告..doc
文本预览下载声明
实验五 SQL SERVER 完整性与安全性
一、实验目的
掌握SQL SERVER数据访问控制策略和技术,SQL SERVER数据库管理系统使用安全帐户认证控制用户对服务器的连接,使用数据库用户和角色等限制用户对数据库的访问。
二、实验内容
1.在服务器级别上创建三个以SQL Server身份验证的登录名,登录名称自定。
Windows身份验证登录后,安全性下新建用户,如图设定:
设定结果可在安全性—登录名下查询,如图:
2.分别为三个登录名在“gongcheng”数据库映射三个数据库用户,数据库用户名为Tom,Mary和John,使这三个登录名可以访问“gongcheng”数据库。
导入“gongcheng”数据库。
安全性下登录名中选择xl1,右击xl1选择属性,映射用户如图:
xl2,xl3同理映射,如图:
3.授予用户John创建表和视图的权限。
在“gongcheng”下,安全性—John—属性,选择安全对象,搜索特定对象,选择“gongcheng”表,在权限中选择“创建表”和“创建视图”,如图:
即可赋予John“创建表”和“创建视图”的权限。
4.完成以下授权:
在“gongcheng”中新建查询,代码如下:
create role r1
grant create table,create view to r1
把对表S的INSERT权力授予用户Tom,并允许他再将此权限授予其他用户。代码如下:
grant insert
on 供应商表S
to Tom
with grant optiongrant select,insert
on 供应商表S
to Mary
grant select,insert
on 零件表P
to Mary
grant select,insert
on 项目工程表J
to Mary
grant delete,update(qty)
on 供应情况表SPJ
to Tom
把对用户Tom授予的所有权力收回,代码如下:
revoke insert
on 供应商表S
from Tom cascade
revoke delete,update(qty)
on 供应情况表SPJ
from Tom
对用户Mary增加SPJ表的SELECT权力。代码如下:
grant select
on 供应情况表SPJ
to Mary
5.两个同学为一组(自由搭配),在自己的数据库服务器上分别为对方创建一个登录名,并授予一定权力,然后用对方为自己创建的登录名和对方的数据库服务器建立连接,进行登录,对对方的数据库服务器进行操作。试试看不同的权限能做的操作是否相同。
在实验中与其他人电脑连接,无法连接,出现以上错误提示。
三、实验总结
这次关于数据库完整性和安全性的实习,让我了解了SQL Server 2008数据访问控制策略和技术,认识了角色的概念,并了解了数据库保护数据安全性的机理,获益匪浅。
显示全部