设为首页 收藏本站
查看: 981|回复: 0

[经验分享] SQL Server 安全性实验

[复制链接]

尚未签到

发表于 2018-10-14 14:43:13 | 显示全部楼层 |阅读模式
  《数据库系统概论》实验三 数据控制(安全性部分)
  姓名
  日期
  
  本实验是在实验二中的school数据库的基础上进行的,如果有需要增删改的地方将在实验中加以说明。
  
  (一)授权与回收。
  【1】 授权。建立多个用户,给他们赋予不同的权限,然后查看是否真正拥有被授予的权限了。
  1) 建立用户(登录帐号)U1、U2、U3、U4、U5、U6、U7和对应的数据库school的用户dbu1、dbu2、dbu3、dbu4、dbyu5、dbu6、dbu7。
  EXEC sp_addlogin 'U1','01'
  use school
  EXEC sp_grantdbaccess 'U1','dbu1'
  
  EXEC sp_addlogin 'U2','02'
  use school
  EXEC sp_grantdbaccess 'U2','dbu2'
  
  EXEC sp_addlogin 'U3','03'
  use school
  EXEC sp_grantdbaccess 'U3','dbu3'
  
  EXEC sp_addlogin 'U4','04'
  use school
  EXEC sp_grantdbaccess 'U4','dbu4'
  
  EXEC sp_addlogin 'U5','05'
  use school
  EXEC sp_grantdbaccess 'U5','dbu5'
  
  EXEC sp_addlogin 'U6','06'
  use school
  EXEC sp_grantdbaccess 'U6','dbu6'
  
  EXEC sp_addlogin 'U7','07'
  use school
  EXEC sp_grantdbaccess 'U7','dbu7'
  2) 在 SYSTEM(即DBA)与七个用户之间进行授权。
  [1-1]把查询Student 表的权限授给用户U1。
  use school
  grant select on Student to dbu1
  
  [1-2]把对Student 表和Course 表的全部操作权限授予用户U2 和U3。
  use school
  grant insert,update,select,delete on Student to dbu2,dbu3
  grant insert,update,select,delete on Course to dbu2,dbu3
  
  [1-3]把对表SC 的查询权限授予所有用户。
  use school
  grant select on SC to public
  
  [1-4]把查询Student 表和修改学生学号的权限授给用户U4。
  use school
  grant select,update(SNO) on Student to dbu4
  
  [1-5]把对表SC 的INSERT 权限授予U5,并允许U5 将此权限再授予其他用户。
  use school
  grant insert on SC to dbu5 with grant option
  
  [1-6]用户U5 将对表SC 的INSERT 权限授予U6,并允许将权限转授给其他用户。
  首先应该以 U5 的身份重新登录数据库,然后再进行授权。
  use school
  grant insert on sc to dbu6 with grant option
  
  [1-7]用户U6 将对表SC 的INSERT 权限授予U7。
  首先应该以U6 的身份重新登录数据库,然后再进行授权。
  use school
  grant insert on sc to dbu7
  
  3) 在授权之后验证用户是否拥有了相应的权限。
  在执行完上面七个语句之后,我们可以分别以不同用户的身份登录数据库,进行相关操作,检查系统是否许可。
  [1-8]U4 更新Student 表的学生学号。
  use school
  UPDATE Student
  SET SNO = 1009 WHERE SNAME = '张天'
  
  [1-9]U7 向SC 表中插入一条数据:(95020,20,88)。
  use school
  insert into SC values(95020,20,88)
  
  【2】 回收权限。将【1】授予的权限部分收回,检查回收后,该用户是否真正丧失了对数据的相应权限。
  1) 回收权限。
  [2-1]收回用户U4 修改学生学号的权限。
  use school
  revoke update(SNO) on Student from dbu4
  
  [2-2]收回所有用户对表SC 的查询权限。
  use school
  revoke select on Student from public
  
  [2-3]收回用户U5 对SC 表的INSERT 权限。
  use school
  revoke insert  on  SC from dbu5 cascade
  
  2) 在回收权限之后验证用户是否真正丧失了该权限。
  [2-4]用户U3 查询表SC。
  use school
  select *
  from SC
  
  [2-5]用户U6 向表SC 中插入一条记录(‘95035’,’3’,92)。
  use school
  insert into SC values(95035,3,92)
  (二)数据库角色。
  【3】数据库角色的创建与授权。
  [3-1]创建数据库角色G1。
  use school
  EXEC sp_addrole 'G1'
  [3-2]给数据库角色授权,使得数据库角色G1 拥有对Student 表的SELECT、UPDATE、INSERT 的权限。
  use school
  grant select,update,insert,delete on Student to G1
  
  [3-3]将用户U1,U3,U7 添加到数据库角色G1 中来。
  use school
  EXEC sp_addrolemember 'G1','dbu1'
  EXEC sp_addrolemember 'G1','dbu3'
  EXEC sp_addrolemember 'G1','dbu7'
  [3-4]对数据库角色G1 的权限进行修改,增加对Student 表的DELETE 权限,并回收对Student表的INSERT 权限。
  use school
  grant delete on Student to G1
  revoke insert  on Student from G1 cascade
  
  


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-621588-1-1.html 上篇帖子: SQL Server 2000版本 下篇帖子: Access转SQL Server2000
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表