数据库SQL Server实验报告 之 SQL数据库的安全性(7/8)

数据库的安全性实验

注意:原版word在下载资源里面(免费下载)

实验目的及要求:

  1. 使学生加深对数据库安全性和完整性的理解。
  2. 掌握SQL Server中有关用户、角色及操作权限的管理方法。
  1. 数据库的安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式。
  2. 实现对SQL Server的用户和角色管理。
  3. 设置和管理数据操作权限。

实验内容及步骤:

1.首先设置能够以“SQL SERVER身份登录”,以Sa登录名进去,密码设置成“sa123”

2.再创建三个以SQL Server身份验证的登录名,登录名分别为login1、login2和login3,密码分别为“111”、“222”和“333”

create login login1 with password='111';

create login login2 with password='222';

create login login3 with password='333';

3.分别为三个登录名在“XSGL”数据库映射三个数据库用户,数据库用户名为Tom,Mary和John,使这三个登录名可以访问“XSGL”数据库。 

use XSGL

create user Tom

for login login1;

create user Mary

for login login2;

create user  John

for login login3;

4.授予用户John创建表和视图的权限。 

grant create table,create view

to John;

--exec  sp_addrolemember  'db_owner',' John'

5.然后以login3登录名进去创建一个新表和一个新的视图进行验证。

创建新表

create table a

( a int);

创建视图

create view b(sno,sname)

as select sno,sname

from student

  1. 把对表student的INSERT权力授予用户Tom,并允许他再将此权限授予其他用户,设置完成进行验证。 

grant insert

on student

to Tom

with grant option

  1. 用户Mary对Student,course,sc三个表有SELECT和INSERT权力 ,进行验证。

grant select,insert

on student

to Mary

grant select,insert

on sc

to Mary

grant select,insert

on course

to Mary

  1. 用户Tom对sc表有DELETE权力,对grade字段具有UPDATE权力,设置完成进行验证。 

grant delete

on sc

to Tom

grant update(grade)

on sc

to Tom

  1. 把对用户Tom授予的所有权力收回,设置完成进行验证。

revoke delete,update

on  sc

from Tom

revoke insert

on  student

from Tom cascade

  1. 要求新建U1用户,对应登录名“ddd”,具有查看选修了数据库课程的学生学号、姓名、所在系和成绩信息,同时对该成绩具有修改的权限,设置完成进行验证。

新建登录名

create login ddd with password='111'

新建用户

create user u1 for login ddd

新建视图

create view caojing (sno,sname,sdept,grade)

as

select student.sno,sname,sdept,grade

from student,sc

where cno in(select cno from course where cname='数据库')

grant all on caojing to u1

  1. 创建新的用户U2和U3,进行下面相应的权限设置。

create login login4 with password='444'

create login login5 with password='555'

create user u2 for login login4

create user u3 for login login5

  1. 赋予所创建的U2用户db_datareader角色,验证权限设置。

create role caojing

exec db_datareader'caojing','u2'

  1. 赋予所创建的U3用户db_datawriter角色,验证权限设置。

create role caojing2

exec db_datawriter'caojing2','u3'

  1. 查看用户U2的权限信息

exec sp_helprotect null,'u2'

(4)查看SC表的授权信息。

exec sp_helprotect'student'

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
一、实验目的 使学生加深对数据库安全性完整性的理解。并掌握SQL Server中有关用户、角色及操作权限的管理方法。熟悉通过SQL语句对数据进行完整性控制。 二、实验内容和要求   数据库安全性实验,在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色管理,设置和管理数据操作权限。   具体内容如下:   设置SQL Server的安全认证模式(Windows或SQL Server和Windows(S)认证模式)。   登录的管理 创建一个登录用户   数据库用户的管理 登陆用户只有成为数据库用户(Database User)后才能访问数据库。每个数据库的用户信息都存放在系统表Sysusers中,通过查看Sysusers表可以看到该数据库所有用户的情况。SQL Server数据库中都有两个默认用户:dbo(数据库拥有者用户)和(dba)。通过系统存储过程或企业管理器可以创建新的数据库用户。   角色的管理 创建一个角色,使创建的用户成为该角色的成员,并授予一定的操作权限。   在学生表中定义主键、外键约束。   在课程表的“课程名”字段上定义唯一约束。   在选课表的“成绩”字段上定义check约束,使之必须大于等于0且小于等于100.“课程号”字段只能输入数字字符。   定义规则,并绑定到读者表的“性别”字段,使之只能取“男、女”值。   在学生表中增加出生日期字段。定义缺省,并绑定到借阅表的“借阅日期”上,使之只能取当前日期。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

君无戏言。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值