收藏 分销(赏)

数据库安全性与完整性-实验报告.doc

上传人:仙人****88 文档编号:6543538 上传时间:2024-12-12 格式:DOC 页数:13 大小:2.91MB
下载 相关 举报
数据库安全性与完整性-实验报告.doc_第1页
第1页 / 共13页
数据库安全性与完整性-实验报告.doc_第2页
第2页 / 共13页
数据库安全性与完整性-实验报告.doc_第3页
第3页 / 共13页
数据库安全性与完整性-实验报告.doc_第4页
第4页 / 共13页
数据库安全性与完整性-实验报告.doc_第5页
第5页 / 共13页
点击查看更多>>
资源描述

1、实 验 报 告课程名称: 数据库系统概论 学 院: 工程学院 专 业: 年 级: 班 级: 姓 名: 学 号: 指导教师: 年 月 日教务处 制实验名称: 数据库安全性及完整性时间:2015-12-17地点:三教205机房班组: 教 师 评 语成绩教师签名实验报告1 实验目的1. 熟悉通过SQL对数据进行安全性控制。2 实验工具KingbaseESKingbaseES及其交互式查询工具ISQLW。3 实验内容与要求1.使用SQL对数据进行安全性控制,包括:授权与权力回收。操作完成后看看已授权的用户是否真正具有授予的数据操作的权力了;权力收回操作之后的用户是否确实丧失了收回的数据操作的权力)。根

2、据操作过程认真填写实验报告,记录所有的实验用例。2.首先在数据库中建立用户U1,U2,U3,U4,U5,U6,U7,选择全部为CONNECT角色,具体操作见课本141页;进行例4.1-4.13各操作。3.在SYSTEM用户与7个CONNECT用户之间进行授权(例题1-12)。注意在完成授权或权利回收之后,以相应的用户登录数据库,检查是否获得相应的权利。4 实验方法及步骤例4.1 把查询student表的权限授给用户u1。以system的身份进入查询分析器,建立用户U1,U2,U3,U4,U5,U6,U7,密码均为tclcreate user U1 with passwordtcl;create

3、 user U2 with passwordtcl;create user U3 with passwordtcl;create user U4 with passwordtcl;create user U5 with passwordtcl;create user U6 with passwordtcl;create user U7 with passwordtcl;以system的身份进入企业管理器,查看用户以U1的身份进入查询分析器,进行任意查询。SELECT* FROMS-C.STUDENT 打开企业管理器设置u1的权限,以U1的身份进入企业管理器,把查询模式S-C的权限授给用户U1。

4、 SELECT* FROMS-C.STUDENT以U1的身份进入企业管理器,把查询Student表的权限授给用户U1。 SELECT* FROMS-C.STUDENT注意:实验中若出现则可以用语句drop owned by U1删除它不懂删除的话,看kingbase用户手册例4.2 把查询student表与course表的权全部操作限授给用户u2与u3。SELECT* FROMS-C.STUDENT,S-C.COURSE以system的身份进入查询分析器,把对Student表与Course表全部操作权限授予用户U2与U3。GRANT ALL PRIVILEGESON TABLE S-C.STU

5、DENT,S-C.COURSETO U2,U3;以U2/U3的身份进入查询分析器,进行任意查询。SELECT* FROMS-C.STUDENT,S-C.COURSE例4.3把对表SC的权限授给所有用户.以U3的身份进入查询分析器,进行任意查询。SELECT* FROMS-C.SC 以system的身份进入查询分析器,把对表SC的查询权限授予所有用户。GRANT SELECTON TABLE S-C.SCTO PUBLIC;以U3的身份进入查询分析器,进行任意查询。SELECT* FROMS-C.SC例4.4 把查询student表与修改学生学号的权限授给用户u4。以system的身份进入查询分

6、析器,对student表插入一条新的学号INSERT INTO S-C.STUDENT(SNO,SNAME,SSEX,SDEPT,SAGE)VALUES(201215128,陈冬,男,IS,18);以U4的身份进入查询分析器,修改插入的学号UPDATE S-C.STUDENTSET SNO=200215128WHERE SNO=201215128;SELECT * FROM S-C.STUDENT; 以system的身份进入查询分析器,把查询Student表与修改学生学号的权限授予用户U4。SELECT *FROM S-C.STUDENT;GRANT UPDATE(SNO),SELECTON

7、TABLE S-C.STUDENTTO U4;以U4的身份进入查询分析器,进行任意查询。UPDATE S-C.STUDENTSET SNO=200215128WHERE SNO=201215128;SELECT * FROM S-C.STUDENT;例4.5 把对表SC的INSERT权限授给用户u5,并允许将此权限再授予其他用户。以U5的身份进入查询分析器,进行任意查询。INSERT INTO S-C.SC(SNO,CNO,GRADE)VALUES(201215128,1,NULL);SELECT * FROM S-C.SC; 以system的身份进入查询分析器,把对表SC的INSERT权限授

8、予U5用户,并允许将此权限在授予其他用户。GRANT INSERTON TABLE S-C.SCTO U5WITH GRANT OPTION; /*此语句,U5不仅有对表SC的INSERT权限,还可以传播此权限。*/以U5的身份进入查询分析器,进行任意查询。INSERT INTO S-C.SC(SNO,CNO,GRADE)VALUES(201215128,1,NULL);SELECT * FROM S-C.SC; 例4.6 u5将此权限授给用户u6。以U6的身份进入查询分析器,进行任意查询。INSERT INTO S-C.SC(SNO,CNO,GRADE)VALUES(201215126,1,

9、NULL);SELECT * FROM S-C.SC; 以U5的身份进入查询分析器,把对表SC的INSERT权限授予U6用户,并允许将此权限在授予其他用户。GRANT INSERTON TABLE S-C.SCTO U6 WITH GRANT OPTION; /*此语句,U5不仅有对表SC的INSERT权限,还可以传播此权限。*/以U6的身份进入查询分析器,进行任意查询。INSERT INTO S-C.SC(SNO,CNO,GRADE)VALUES(201215126,1,NULL);SELECT * FROM S-C.SC; 例4.7同样,u6还可以将此权限授给用户u7。以U6的身份进入查询

10、分析器,把对表SC的INSERT权限授予U7用户。GRANT INSERTON TABLE S-C.SCTO U7;以U7的身份进入查询分析器,把对表SC的INSERT权限授予U2用户。GRANT INSERTON TABLE S-C.SCTO U2;注意:因为U6未给U7传播的权限,因此U7不能再传播此权限。例4.8 把用户U4修改学生学号的权限收回。以system的身份进入查询分析器,把用户U4修改学生学号的权利收回。REVOKE UPDATEON TABLE S-C.STUDENTFROM U4;以U4的身份进入查询分析器,对学生学号进行修改。UPDATE S-C.STUDENTSET

11、SNO=201215128WHERE SNO=200215128;例4.9收回所有用户对表SC的查询权限。以system的身份进入查询分析器,收回所有用户对表SC的查询权限。REVOKE SELECTON TABLE S-C.SCFROM PUBLIC;以U1的身份进入查询分析器,对表SC进行任意查询 SELECT grade FROM S-C.SC;例4.10把用户U5对SC表的INSERT权限收回。以system的身份进入查询分析器,把用户U5对SC表的INSERT权限收回。REVOKE INSERTON TABLE S-C.SCFROM U5 CASCADE;以U5的身份进入查询分析器,

12、对表SC进行INSERT权限测试。 INSERT INTO S-C.SC(SNO,CNO,GRADE)VALUES(201215152,1,80);SELECT * FROM S-C.SC; 例4.11通过角色来实现将一组权限授予一个用户。以system的身份进入查询分析器,创建一个角色CREATE ROLE R1;以system的身份进入企业管理器,查看用户 刚刚创建的角色是空的,没有任何内容。我们使用grant语句,使角色R1拥有Student表的SELECT、UPLECT、INSERT权限GRANT SELECT,UPDATE,INSERTON TABLE S-C.STUDENTTO R

13、1;将这个角色授予U7,使他们具有角色R1所包含的全部权限。以U7的身份进入查询分析器,对Student表进行查询SELECT * FROM S-C.STUDENT; 将这个角色授予U7,使他们具有角色R1所包含的全部权限。GRANT R1 TO U7;以U7的身份进入查询分析器,对Student表进行查询SELECT * FROM S-C.STUDENT;也可以一次性地通过R1来收回U7的这三个权限。以system的身份进入查询分析器,一次性地通过R1来收回U7的这三个权限。REVOKE R1FROM U7; 以U7的身份进入查询分析器,对Student表进行查询SELECT * FROM

14、S-C.STUDENT; CREATE ROLE R1;CREATE ROLE 王平;CREATE ROLE 张明;CREATE ROLE 赵玲;GRANT SELECT,UPDATE,INSERTON TABLE S-C.STUDENTTO R1;GRANT R1TO 王平;GRANT R1TO 张明;GRANT R1TO 赵玲;REVOKE R1FROM 王平; 例4.12角色的权限修改。以system的身份进入查询分析器,增加角色R1对Student表的DELETE权限。 GRANT DELETEON TABLE S-C.STUDENTTO R1;将这个角色授予U7,使他们具有角色R1所

15、包含的全部权限。GRANT R1 TO U7;以U7的身份进入查询分析器,进行对Student表的DELETE权限测试。DELETE FROM S-C.STUDENTWHERE SNO=200215128;SELECT * FROM S-C.STUDENT; 例4.13减少角色R1对Student表的select权限以system的身份进入查询分析器,减少角色R1对Student表的select权限。 REVOKE select ON TABLE S-C.STUDENT FROM R1; 以U7的身份进入查询分析器,进行对Student表的select权限测试。Select sname FROM S-C.STUDENTWHERE SNO=200215128; 5 实验结果及总结1. 实验的时候注意进入查询分析器的用户,不同的用户会有不同的查询结果。2. 创建或者删除用户角色的时候要刷新,不然不会自己更新。3. 注意在对权限的授予与收回的时候,要对比前后的不同结果,说明语句的执行结果。4. WITH GRANT OPTION;此语句,U5不仅有对表SC的INSERT权限,还可以传播此权限。如果没有这条语句,则不能再传播此权限。5. 可以看用户手册研究企业管理器的更多功能,还有kingbase的其它各种功能。

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服