数据库权限问题

标签:
it |
分类: SQL_Server |
建立“教学管理数据库”
其中“课程表(course)”的表结构如下:
列名 |
说明 |
数据类型 |
约束 |
Cno |
课程号 |
字符串,长度10 |
主键 |
Cname |
课程名 |
字符串,长度20 |
非空 |
Credit |
学分 |
整型 |
大于0 |
Property |
课程性质 |
字符串,长度10 |
默认值为”必修” |
1、建立SQL身份认证的登录帐号:log1,log2,log3。
http://s1/mw690/001NkNDIgy6DCEEL3gY30&690
2、在查询分析器中,用log1登录,能否看到“教学管理数据库”?为什么?
http://s2/mw690/001NkNDIgy6DCEWp9Dj81&690
3、将log1,log2,log3映射为“教学管理数据库”中的用户。
http://s11/mw690/001NkNDIgy6DCEXUlt04a&690
4、在查询分析器中,使用log1登录,并在“教学管理数据库”中执行下列语句,是否能执行?为什么?
5、授予log1具有对课程表的查询权限,授予log2具有对课程表的插入权限。
http://s13/mw690/001NkNDIgy6DCF01FBG9c&690
6、在查询分析器中,使用log2登录,执行下述语句,能否成功?为什么?
http://s10/mw690/001NkNDIgy6DCF3zVtT19&690
不能,sa没有授予log2用户查询功能
7、在查询分析器中,再用log1登录,再次执行下述语句:
Select * from课程表
这次能否成功?但如果让log1执行下列语句:
Insert into 课程表 values(‘c003’ ,’件工程’,4,’必修’)
能否成功?为什么?
不能,sa没有授予log1的用户插入功能
8、在“教学管理数据库”这中建立用户角色role1,并将log1,log2添加到此角色中。
建立用户角色:
http://s16/mw690/001NkNDIgy6DCF6pBPV9f&690
log1,log2添加到此角色中:
9、授予role1角色对课程表具有插入、删除和查询权限。
http://s9/mw690/001NkNDIgy6DCF9IcOc68&690
10、在查询分析器中,使用log1登录,再次执行下述语句:能否成功?为什么?
Insert into 课程表 values(‘c003’ ,’件件工程’,4,’必修’)
http://s3/mw690/001NkNDIgy6DCFcI7WWa2&690
11、在查询分析器中,使用log2录,再次执行下述语句:能否成功?为什么?
Select * from
http://s9/mw690/001NkNDIgy6DCFdnXV6b8&690
12、授予log3在“教学管理数据库”中具有建表权限。
http://s4/mw690/001NkNDIgy6DCFe5vntc3&690
Log3用户有的建表权限:
13、在查询分析器中,使用log3,再次执行下述语句,能否成功?为什么?
Select * from课程表
不能,log3不具有查询功能
14、将log3添加到db_datareader角色中,并让log3再次执行下述语句,能否成功?为什么?
db_datareader是一个读取的权限,当log3添加到这个角色的时候,log3就能有查询权限来读取这个表
Select * from course
http://s12/mw690/001NkNDIgy6DCFhjl1x0b&690
15、在查询分析器中,使用log3登录,再次执行下述语句,能否成功?为什么?
不能,sa没有授予log3用户插入功能
16、授予Public角色具有课程表的查询权和插入权。
17、在查询分析器中,使用log3登录,再次执行下述语句,能否成功?为什么?
http://s6/mw690/001NkNDIgy6DCFiYWQ5a5&690