《数据库原理与应用》(第三版)第13章 安全管理 基础 习题参考答案
習(xí) 題
1.通常情況下,數(shù)據(jù)庫(kù)中的權(quán)限劃分為哪幾類?
答:通常情況下,將數(shù)據(jù)庫(kù)中的權(quán)限劃分為兩類。一類是對(duì)數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行維護(hù)的權(quán)限,另一類是對(duì)數(shù)據(jù)庫(kù)中的對(duì)象和數(shù)據(jù)進(jìn)行操作的權(quán)限。
2.數(shù)據(jù)庫(kù)中的用戶按其操作權(quán)限可分為哪幾類,每一類的權(quán)限是什么?
答:數(shù)據(jù)庫(kù)中的用戶按其操作權(quán)限的不同可分為如下三類:
(1) 系統(tǒng)管理員:在數(shù)據(jù)庫(kù)服務(wù)器上具有全部的權(quán)限
(2) 數(shù)據(jù)庫(kù)對(duì)象擁有者:對(duì)其所擁有的對(duì)象具有全部權(quán)限。
(3) 普通用戶:只具有對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的增、刪、改、查權(quán)限。
3.SQL Server的登錄名的來(lái)源有幾種?分別是什么?
答:兩種,Windows身份驗(yàn)證的和SQL Server身份驗(yàn)證的。
4.權(quán)限的管理包含哪些內(nèi)容?
答:權(quán)限管理包含:授予權(quán)限、收回權(quán)限和拒絕權(quán)限。
5.什么是用戶定義的角色,其作用是什么?
答:用戶自己建立的角色,其作用是簡(jiǎn)化數(shù)據(jù)庫(kù)用的權(quán)限管理。
6.在SQL Server中,用戶定義的角色中可以包含哪些類型的成員?
答:可以包含普通用戶、用戶定義的角色。
7.寫出實(shí)現(xiàn)下述功能到T-SQL語(yǔ)句。
(1)建立一個(gè)Windows身份驗(yàn)證的登錄名,Windows域名為:CS,登錄名為:Win_Jone。
答:CREATE LOGIN [CS\Win_jone] FROM WINDOWS;
(2)建立一個(gè)SQL Server身份驗(yàn)證的登錄名,登錄名為:SQL_Stu,密碼為:3Wcd5sTap43K。
答:CREATE LOGIN SQL_Stu WITH PASSWORD = ‘3Wcd5sTap43K’;
(3)刪除Windows身份驗(yàn)證的登錄名,Windows域名為:IS,登錄名為:U1。
答:DROP LOGIN [IS\U1]
(4)刪除SQL Server身份驗(yàn)證的登錄名,登錄名為:U2。
答:DROP LOGIN U2
(5)建立一個(gè)數(shù)據(jù)庫(kù)用戶,用戶名為SQL_Stu,對(duì)應(yīng)的登錄名為SQL Server身份驗(yàn)證的SQL_Stu。
答:CREATE USER SQL_Stu;
(6)建立一個(gè)數(shù)據(jù)庫(kù)用戶,用戶名為Jone,對(duì)應(yīng)的登錄名為Windows身份驗(yàn)證的Win_Jone,Windows域名為:CS。
答:CREATE USER Jone FOR Win_Jone
(7)授予用戶u1具有對(duì)course表的插入和刪除權(quán)。
答:grant insert, delete on course to u1
(8)授予用戶u1對(duì)Course表的刪除權(quán)。
答:grant delete on course to u1
(9)收回u1對(duì)course表的刪除權(quán)。
答:revoke delete on course from u1
(10)拒絕用戶u1獲得對(duì)Course表的更改權(quán)。
答:deny update on course to u1
(11)授予用戶u1具有創(chuàng)建表和視圖的權(quán)限。
答:grant create table,create view to u1
(12)收回用戶u1創(chuàng)建表的權(quán)限。
答:revoke create table from u1
(13)建立一個(gè)新的用戶定義的角色,角色名為:NewRole。
答:create role NewRole
(14)為New_Role角色授予SC表的查詢和更改權(quán)。
答:grant select, update on sc to New_Role
(15)將SQL Server身份驗(yàn)證的u1用戶和Windows身份驗(yàn)證的Win_Jone用戶添加到New_Role角色中。
答:EXEC sp_addrolemember ‘New_Role’, ‘u1’
EXEC sp_addrolemember ‘New_Role’, ‘Win_Jone’
上機(jī)練習(xí)
3.用log1建立一個(gè)新的數(shù)據(jù)庫(kù)引擎查詢,并在Students數(shù)據(jù)庫(kù)中執(zhí)行下述語(yǔ)句,能否成功?為什么?
SELECT * FROM Course
答:不能,因?yàn)閘og1沒有被授予Course表的查詢權(quán)。
5.在SSMS中,用log2建立一個(gè)新的數(shù)據(jù)庫(kù)引擎查詢,執(zhí)行下述語(yǔ)句,能否成功?為什么?
INSERT INTO Course VALUES(‘C101’,‘?dāng)?shù)據(jù)庫(kù)基礎(chǔ)’,4,5)
答:能成功,因?yàn)楸皇谟枇瞬迦霗?quán)。
再執(zhí)行下述語(yǔ)句,能否成功?為什么?
SELECT * FROM Course
答:不能,因?yàn)閘og2沒有被授予Course表的查詢權(quán)。
6.在SSMS中,在log1建立的數(shù)據(jù)庫(kù)引擎查詢中,再次執(zhí)行下述語(yǔ)句:
SELECT * FROM Course
答:能,因?yàn)閘og1被授予了Course的查詢權(quán)。
這次能否成功?但如果執(zhí)行下述語(yǔ)句:
INSERT INTO Course VALUES(‘C103’,‘軟件工程’,4,5)
能否成功?為什么?
答:不能,因?yàn)閘og1被授予了Course的插入權(quán)。
10.在SSMS中,用pub_user建立一個(gè)新的數(shù)據(jù)庫(kù)引擎查詢,執(zhí)行下述語(yǔ)句,能否成功?為什么?
SELECT * FROM Course
答:不能,因?yàn)閜ub_user沒有被授予Course的查詢權(quán)。
12.在pub_user建立的數(shù)據(jù)庫(kù)引擎查詢中,再次執(zhí)行下述語(yǔ)句,能否成功?為什么?
SELECT * FROM Course
答:能,因?yàn)閜ub_user在SelectRole角色中,而SelectRole角色被授予了Course的查詢權(quán)。
總結(jié)
以上是生活随笔為你收集整理的《数据库原理与应用》(第三版)第13章 安全管理 基础 习题参考答案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 《数据库原理与应用》(第三版)第12章
- 下一篇: 《数据库原理与应用》(第三版)第15章