- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库原理课程实验报告
1. 实验题目:实验三 安全性
2.实验目的
1.????熟悉通过SQL对数据进行安全性控制。
2.????完成书本上例题的上机练习。
3? 实验平台
3.1? 操作系统:
??? Windows 2000或者Windows XP
??? 注:使用Professional版的操作系统建议安装数据库管理系统的教学版,Server版的操作系统建议安装数据库管理系统的企业版。
3.2? 数据库管理系统:
???SQL Server 2000数据库管理系统
4? 实验内容及要求
使用SQL对数据进行安全性控制,包括:授权和权力回收。操作完成后看看已授权的用户是否真正具有授予的数据操作的权力了;权力收回操作之后的用户是否确实丧失了收回的数据操作的权力)。根据以下要求认真填写实验报告,记录所有的实验用例。
5. 实验内容与完成情况:
5.1授权与回收
【例1】 把查询Student表的权限授给用户U1
GRANT SELECT
ON TABLE Student
TO U1;
把TABLE去掉后
在企业管理器数据库的角色中创建用户‘U1’后
【例2】把对Student表和Course表的全部操作权限授予用户U2和U3.
GRANT ALL PRIVILEGES
ON TABLE Student,Course
TO U2,U3;
【例3】把对表SC的查询权限授予所有用户
GRANT SELECT
ON SC
TO PUBLIC;
【例4】把查询Student表和修改学生学号的权限授给用户U4
GRANT UPDATE(Sno),SELECT
ON Student
TO U4;
【例5】把对表SC的INSERT权限授予U5用户,并允许将此权限再授予其他用户。
GRANT INSERT
ON SC
TO U5
WITH GRANT OPTION;
【例6】U5将此权限授予U6
GRANT INSERT
ON SC
TO U6
WITH GRANT OPTION;
【例7】U6将此权限授予U7
GRANT INSERT
ON SC
TO U7;
【例8】把用户U4修改学生学号的权限收回
REVOKE UPDATE(Sno)
ON Student
FROM U4;
【例9】收回所有用户对表SC的查询权限
REVOKE SELECT
ON SC
FROM PUBLIC;
【例10】把用户U5对SC表的INSERT权限收回
REVOKE INSERT
ON SC
FROM U5 CASCADE;
(2)数据库角色
【例11】通过角色来实现将一组权限授予一个用户。步骤如下:
1.首先创建一个角色
CREATE ROLE R1;
2.然后使用GRANT语句,使角色R1拥有Student表的SELECT、UPDATE、INSERT的权限
GRANT SELECT,UPDATE,INSERT
ON Student
TO R1;
3.将这个角色授予王平、张明、赵玲。使他们具有角色R1所包含的全部权限。
GRANT R1
TO 王平,张玲,赵玲;
换为:
GRANT SELECT,UPDATE,INSERT
ON Student
TO 王平,张玲,赵玲;
4.当然,也可以一次性的通过R1来回收王平的3个权限
REVOKE R1
FORM 王平;
换为:REVOKE SELECT,UPDATE,INSERT
ON Student
FRoM 王平;
【例12】角色的权限修改使角色R1增加了DELETE的权限
GRANT DELETE
ON Student
TO R1;
【例13】使R1减少SELECT权限
REVOKE SELECT
ON Student
FROM R1;
【例14】建立计算机系学生的视图,把对该视图的SELECT权限授予王平,把该视图上的所有操作权限授予张明。
CREATE VIEW CS_Student
AS
SELECT *
FROM Student
WHERE Sdept=CS;
GRANT SELECT
ON CS_Student
TO 王平;
GRANT ALL PRIVILEGES
ON CS_Student
TO 张明;
6. 出现的问题:
问题一: 语法错误
问题二: 操作错误
问题三: 未创建用户
问题四: 格式错误
问题五: 对象问题
7. 解决方案(列出遇到的问题和解决办法,列出没有解决的问题):
问题一的解决方法:把TABLE去掉,可以在企业管理器中手动进行新建也可以使用其它命令EXEC sp_addrole R1;
问题二的解决方法:用户名选择改问题三的解决方法:在企业管理器数据库角色中新建用户U1,U2,U3,U4,U5,U6,R1等。
问题四的解决方法:
文档评论(0)