数据库的安全性

实验数据控制

  • 实验目的

熟悉通过SQL对数据进行安全性控制。

  • 实验内容和要求(利用EDUC学生选课数据库):
  1. 建立用户U1,U2,U3分别映射到登录名TLogin1,TLogin2,TLogin3,密码自设。
  2. 输出当前用户。
  3. 转到用户U1执行,查询S表,看是否拥有查询权限?
  4. 转到dbo下,把S表的select的权限授权给U1,且允许U1把该权限传播。
  5. 查看当前U1能否查询S表
  6. U1把查询S表的权限授权给U2
  7. 查看当前U2能否查询S表
  8. U2能否把查询S表的权限授权给U3?
  9. 查看当前U3能否查询S表
  10. 转到dbo下,把S表的insert的权限授权给U1
  11. 转到用户U1执行,往S表插入一条新元组,看是否能插入元组?
  12. U1收回U2的查询S表的权限
  13. dbo收回U1的查询及插入S表的权限
  14. 查看U1、U2是否具有查询S表的权限

 

 

 

 

 

 

 

 

 

 

 

 

 

三、实验报告要求:

要求:把自己所做的关键步骤进行截图,每一张截图上面签上自己的学号后三位,截图包括:关键SQL语句和执行结果,表的结构和内容的图形化显示结果。放在Word文档中,并加以文字说明。注意:实验时如果出现错误,把错误提示也要截图。

文件命名:如:1245350076-张晓明-实验8.docx

创建登录用户:

create login login_name with password=''

删除登录用户:

drop login login_name

创建数据库用并将其映射到登陆上:

create user user_name for login login_name

输出当前用户:

print user

转到用户login_name:

execute as user = 'login_name' 

转到dbo下:

revert

授权:

grant 权限名
on 表明
to login_name

允许将此权限授予其他用户:

with grant option

回收:

revoke 权限名
on 对象名
from 用户名

级联 cascade 使用后系统只回收直接或间接从该用户处获得的权限

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值