官术网_书友最值得收藏!

第4章 數據庫安全性

一、選擇題

1下述哪一個SQL語句用于實現數據存取的安全機制(  )。

A.COMMIT

B.ROLLBACK

C.GRANT

D.CREATE TABLE

【答案】C

【解析】COMMIT是向數據庫遞交數據,ROLLBACK是回滾數據,CREATE TABLE是創建表,而GRANT是用來對用戶權限進行管理,可以實現數據存取的安全機制。

2關于登錄賬號和數據庫用戶,下列各項表述不正確的是(  )。

A.登錄賬號是在服務器級創建的,數據庫用戶是在數據庫級創建的

B.創建數據庫用戶時必須存在該用戶的登錄賬號

C.數據庫用戶和登錄賬號必須同名

D.一個登錄賬號可以對應多個數據庫用戶

【答案】C

【解析】登錄賬戶屬于SQL Server服務安全防線,用戶只有擁有SQL Server服務登錄賬戶,才能與SQL Server建立鏈接;數據庫用戶屬于SQL Server數據庫安全防線,SQL Server中的每個數據庫都有自己的用戶和角色,該數據庫只能由它的用戶和角色訪問。它們是不同級別的賬號,它們需要綁定,創建數據庫用戶時必須存在該用戶的登錄賬號,一個登錄賬號可以對應多個數據庫用戶,但不需要同名。

3關于SQL Server的數據庫角色敘述正確的是(  )。

A.用戶可以自定義固定角色

B.數據庫角色是系統自帶的,用戶一般不可以自定義

C.每個用戶只能擁有一個角色

D.角色用來簡化將很多用戶權限分配給很多用戶這一復雜任務的管理

【答案】D

【解析】服務器級的角色建立在SQL服務器上,是系統預定義的,用戶不能創建服務器角色,只能選擇合適的服務器角色,但能定義數據庫角色;一個數據庫用戶可以出現在多種角色中;角色是多權限分配給多用戶這一復雜任務的管理方式。

4關于SQL Server的數據庫權限敘述不正確的是(  )。

A.SQL Server數據庫的對象權限可以用GRANT分配,而語句權限不可以用GRANT分配

B.服務器權限能通過固定服務器角色進行分配,不能單獨分配給用戶

C.系統管理員能使用SQL Server執行任何任務

D.每個用戶可以被分配若干權限,并且有可能把權限賦予其他用戶

【答案】A

【解析】服務器級的角色建立在SQL服務器上,是系統預定義的,用戶不能創建服務器角色,只能選擇合適的服務器角色,SQL Server的數據庫權限可以分為數據庫對象權限和語句權限,對象權限和語句權限都可以通過GRANT和REVOKE來分配和收回,系統管理員具有最高的權限。

5保護數據庫,防止未經授權或不合法的使用造成的數據泄漏、非法更改或破壞。這是指數據的(  )。

A.安全性

B.完整性

C.并發控制

D.恢復

【答案】A

【解析】數據安全性是指防止未經授權或不合法的用戶使用數據庫。

6用于實現數據存取安全性的SQL語句是(  )。

A.CREATE TABLE

B.COMMIT

C.GRANT和REVOKE

D.ROLLBACK

【答案】C

【解析】CREATE TABLE是建立基表的語句;COMMIT是提交事務的語句;ROLLBACK是回滾事務的語句;GRANT是授權語句,REVOKE是回收權限的語句。

7采用定義視圖的機制在數據控制方面要解決的問題是(  )。

A.數據安全性

B.數據完整性

C.數據庫恢復

D.數據庫并發控制

【答案】A

【解析】采用定義視圖的機制在數據控制方面要解決的問題是數據安全性。

二、填空題

1數據的安全性是指(  )。

【答案】保護數據庫,防止未經授權或不合法的使用造成的數據泄漏、更改或破壞

2安全性控制的一般方法有(  )、(  )、(  )、和(  )視圖的保護五級安全措施。

【答案】用戶標識與系統鑒定;存取控制;審計;數據加密

3(  )和(  )一起組成了安全性子系統。

【答案】用戶權限定義;合法權檢查機制

4在SQL語言中,為了數據庫的安全性,設置了對數據的存取進行控制的語句,對用戶授權使用(  )語句,收回所授的權限使用(  )語句。

【答案】GRANT;REVOKE

5(  )、(  )、(  )和是計算機系統中的三類安全性。

【答案】技術安全類;管理安全類;政策法律類安全性

三、判斷題

1DBMS提供授權功能控制不同用戶訪問數據的權限,主要目的是為了實現數據庫的完整性。(  )

【答案】×

【解析】DBMS提供授權功能控制不同用戶訪問數據的權限,主要目的是為了實現數據庫的安全性。

2SQL Server有兩種安全性認證模式:Windows NT和SQL Server。(  )

【答案】×

【解析】SQL Server的安全性認證模式有兩種:混合模式和集成模式。混合模式允許使用windows NT安全性認證模式或者SQL Server安全性認證模式,而集成模式只能夠使用windows NT安全認證模式。SQL Server的缺省安全模式為混合模式。

3視圖機制雖然有一定的安全保護功能,但不精細,往往不能達到應用系統的要求。(  )

【答案】

四、問答題

1什么是數據庫的安全性?有哪些安全措施?

答:(1)數據庫的安全性是指保護數據庫,防止不合法的使用,以免數據的泄漏、非法更改和破壞。、

(2)數據庫安全性控制的方法

用戶標識與系統鑒定:DBMS都要提供一定的方式供用戶標識自己。在存取數據庫的數據之前,用戶首先要自我標識,系統對用戶的標識進行核定,通過鑒定后,才提供數據庫的使用權。常用的標識方法是用戶名和口令字。

存取權限的控制:用戶被獲準使用數據庫之后,還要根據預定的用戶權限進行存取控制,如某個用戶只能讀哪些數據庫表,某個用戶只能寫哪些數據庫表等。

數據加密:以密碼的方式存儲數據。

2假設已建立了學生基本表Student(Sno,Sname,Ssex,Sage,Sdept),課程基本表Course(Cno,Cname,Ccredit),基本表SC(Sno,Cno,Grade),試用SQL的授權和回收語句完成下列操作:

(1)把查詢Student表的權限授予用戶U1。

(2)把對Student表和Course表的全部權限授予用戶U2和U3。

(3)把對表SC的查詢權限授予所有用戶。

(4)把查詢Student表和修改學生學號的權限授給用戶U4。

(5)把對表SC的INSERT權限授予U5,并允許他再將此權限授予其他用戶。

(6)DBA把在數據庫SC中建立表的權限授予用戶U8。

(7)把用戶U4修改學生學號的權限收回。

(8)收回所有用戶對表SC的查詢權限。

(9)把用戶U5對SC表的INSERT權限收回。

答:(1)GRANT SELECT ON TABLE Student TO U1;

(2)GRANT ALL PRIVILIGES ON TABLE Student,Course TO U2,U3;

(3)GRANT SELECT ON TABLE SC TO PUBLIC;

(4)GRANT UPDATE(Sno),SELECT ON TABLE Student TO U4;

(5)GRANT INSERT ON TABLE SC TO U5 WITH GRANT OPTION;

(6)GRANT CREATE1:AB ON DATABASE S C TO U8;

(7)REVOKE UPDATE(Sno)ON TABLE Student FROM U4;

(8)REVOKE SELECT ON TABLE SC FROM PUBLIC;

(9)REVOKE INSERT ON TABLE SC FROM U5;

3SQL中用戶權限有哪幾類?并做必要的解釋。

答:SQL定義了如下6類用戶權限供用戶選擇使用:

(1)SELECT:允許用戶對關系或視圖執行SELECT操作。

(2)INSERT:允許用戶對關系或視圖執行INSERT操作。

(3)DELETE:允許用戶對關系或視圖執行DELETE操作。

(4)UPDATE:允許用戶對關系或視圖執行UPDATE操作。

(5)REFERENCES:允許用戶在定義新關系時,引用其他關系的主碼作為外碼。

(6)USAGE:允許用戶使用已定義的域。

主站蜘蛛池模板: 四平市| 湟源县| 青海省| 苗栗市| 上饶县| 长寿区| 乳源| 沙田区| 海门市| 许昌县| 台湾省| 马边| 金湖县| 炉霍县| 梓潼县| 安阳县| 阳高县| 阿克苏市| 夏津县| 景宁| 和平区| 鹤壁市| 沙坪坝区| 古交市| 屯门区| 连山| 九龙县| 炉霍县| 靖西县| 乐至县| 泸州市| 南召县| 浮山县| 河西区| 湄潭县| 永安市| 武乡县| 蒲江县| 南木林县| 宁武县| 酉阳|