點(diǎn)擊查看:2015計(jì)算機(jī)等級(jí)考試四級(jí)數(shù)據(jù)庫(kù)工程師復(fù)習(xí)匯總
第14章 安全管理
14.1 安全控制
14.1.1 安全控制模型
身份驗(yàn)證 操作權(quán)控制 文件操作控制 加密存儲(chǔ)與冗余
14.1.2 數(shù)據(jù)庫(kù)權(quán)限的種類及用戶的分類
1、 權(quán)限的種類
(1) 對(duì)DBMS進(jìn)行維護(hù)的權(quán)限;
(2) 對(duì)數(shù)據(jù)庫(kù)中的對(duì)象和數(shù)據(jù)進(jìn)行操作的權(quán)限。
(A) 對(duì)數(shù)據(jù)庫(kù)對(duì)象的權(quán)限,包括創(chuàng)建、刪除和修改數(shù)據(jù)庫(kù)對(duì)象;
(B) 對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的操作權(quán)限,包括對(duì)表、視圖數(shù)據(jù)的增、刪、改、查權(quán)限。
2、 數(shù)據(jù)庫(kù)用戶的分類
(1) 數(shù)據(jù)庫(kù)系統(tǒng)管理員(sa):在數(shù)據(jù)庫(kù)中具有全部的權(quán)限;
(2) 數(shù)據(jù)庫(kù)對(duì)象擁有者:對(duì)其所擁有的對(duì)象具有一切權(quán)限;
(3) 普通用戶:只具有對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)的增、刪、改、查權(quán)限。
14.2 SQL Server 的安全控制
1、 用戶訪問(wèn)SQL Server 數(shù)據(jù)庫(kù)中的數(shù)據(jù)中,必須經(jīng)過(guò)三個(gè)認(rèn)證過(guò)程
(1) 身份認(rèn)證:驗(yàn)證用戶是否有連接到數(shù)據(jù)庫(kù)服務(wù)器的“連接權(quán)”;
(2) 驗(yàn)證用戶是否數(shù)據(jù)庫(kù)的合法用戶;
(3) 驗(yàn)證數(shù)據(jù)庫(kù)用戶是否具有要進(jìn)行的操作的操作權(quán)限。
2、 SQL Server的用戶有兩種類型:
(1) Windows授權(quán)用戶:來(lái)自Windows的用戶或組;
(2) SQL授權(quán)用戶:來(lái)自于非Windows的用戶,也將這種用戶稱為SQL用戶。
3、 SQL Server 為不同用戶類型提供不同的安全認(rèn)證模式:
(1) Windows 身份驗(yàn)證模式:允許Windows NT或Windows 2000用戶連接到SQL Server,在這種模式下,SQL Server將通過(guò)Windows來(lái)獲得用戶信息,并對(duì)賬號(hào)和密碼進(jìn)行重新驗(yàn)證,當(dāng)使用Windows身份驗(yàn)證模式時(shí),用戶必須先登錄到Windows,然后再登錄到SQL Server;
(2) 混合驗(yàn)證模式:表示SQL Server接受Windows授權(quán)用戶和SQL授權(quán)用戶。
14.3 管理SQL Server 登錄賬戶
14.3.1 系統(tǒng)內(nèi)置的登錄賬戶
1、 BUILTIN\Administrators:是一個(gè)Windows組賬戶,表示所有的Windows Administrators(系統(tǒng)管理員)組中的用戶都可以登錄到SQL Server,此組中的成員同是具有SQL Server的系統(tǒng)管理員權(quán)限;
2、 Sa:SQL Server驗(yàn)證模式的系統(tǒng)管理員賬戶;
3、 域名\Administrators: Windows的系統(tǒng)管理員同時(shí)也是SQL Server的合法用戶,并且具有SQL Server的系統(tǒng)管理員權(quán)限。
14.3.2 建立登錄賬戶
1、 使用企業(yè)管理器建立登錄賬戶
2、 使用系統(tǒng)存儲(chǔ)過(guò)程建立登錄賬戶
(1) 建立SQL Server身份驗(yàn)證的登錄賬戶:
sp_addlogin [@loginame=]’login’[,[@passwd=]’password’][,[@defdb=]’database’]
其中:
(A)[@loginame=]’login’:登錄賬戶名;
(B)[@passwd=]’password’:登錄密碼;
(C)[@defdb=]’database’:連接的數(shù)據(jù)庫(kù)。
(2) 建立Windows身份驗(yàn)證的登錄賬戶
sp_grantlogin [@loginame=]’login’
其中:[@loginame=]’login’為要添加的Windows NT用戶或組的名稱,Windows NT組和用戶必須用Windows NT域名限定,格式為“域\用戶”
14.3.3 刪除登錄賬戶
1、 使用企業(yè)管理器刪除登錄賬戶;
2、 使用系統(tǒng)存儲(chǔ)過(guò)程刪除登錄賬戶:
(1)刪除SQL Server身份驗(yàn)證的登錄賬戶:
sp_droplogin [@loginame=]’login’
其中:[@loginame=]’login’:將被刪除的登錄賬戶名;
(2)刪除Windows身份驗(yàn)證的登錄賬戶
sp_revokelogin [@loginame=]’login’
其中:[@loginame=]’login’為要?jiǎng)h除的Windows NT用戶或組的名稱,Windows NT組和用戶必須用Windows NT域名限定,格式為“域\用戶”
14.4 管理數(shù)據(jù)庫(kù)用戶
14.4.1 建立數(shù)據(jù)庫(kù)用戶
1、 使用企業(yè)管理器建立數(shù)據(jù)庫(kù)用戶;
2、 使用系統(tǒng)存儲(chǔ)過(guò)程建立數(shù)據(jù)庫(kù)用戶:
sp_adduser[@ loginame=]’login’[,[@name_in_db=]’user’][,[@grpname=]’group’]
其中:
(1)[@ loginame=]’login’:登錄賬戶名,login必須是已有的SQL Server登錄賬戶或Windows NT用戶名
(2)[@name_in_db=]’user’:新數(shù)據(jù)庫(kù)用戶名,如沒(méi)有指定,則user與login名相同;
(3)[@grpname=]’group’:角色名,新用戶自動(dòng)地成為此角色的成員,group必須是當(dāng)前數(shù)據(jù)庫(kù)已有的角色。
14.4.2 刪除數(shù)據(jù)庫(kù)用戶
1、使用企業(yè)管理器刪除數(shù)據(jù)庫(kù)用戶;
2、使用系統(tǒng)存儲(chǔ)過(guò)程建立數(shù)據(jù)庫(kù)用戶:
sp_dropuser[@name_in_db=]’user’
14.5 管理權(quán)限
14.5.1 SQL Server權(quán)限種類
1、 對(duì)象權(quán)限:指用戶對(duì)數(shù)據(jù)庫(kù)中的表、視圖等對(duì)象中數(shù)據(jù)的操作權(quán)限,相當(dāng)于數(shù)據(jù)庫(kù)操作語(yǔ)言(DML)的語(yǔ)句權(quán)限;
2、 語(yǔ)句權(quán)限:相當(dāng)于數(shù)據(jù)定義語(yǔ)言(DDL)的語(yǔ)句權(quán)限,專指是否允許執(zhí)行:CREATE TABLE、CREATE VIEW等與創(chuàng)建數(shù)據(jù)庫(kù)對(duì)象有關(guān)的操作;
3、 隱含權(quán)限:指數(shù)據(jù)庫(kù)管理系統(tǒng)預(yù)定義的服務(wù)器角色、數(shù)據(jù)庫(kù)角色、數(shù)據(jù)庫(kù)擁有者和數(shù)據(jù)庫(kù)對(duì)象擁有者所具有的權(quán)限
14.5.2 權(quán)限的管理
權(quán)限的管理包括:
(1) 授予權(quán)限:允許用戶或角色具有某種操作權(quán);
(2) 收回權(quán)限:不允許用戶或角色具有某種操作權(quán),或收回曾經(jīng)授予的權(quán)限;
(3) 拒絕訪問(wèn):拒絕某用戶或角色具有某種操作權(quán)限;
1、 使用企業(yè)管理器管理數(shù)據(jù)庫(kù)用戶權(quán)限;
2、 使用企業(yè)管理器管理語(yǔ)句權(quán)限;
3、 使用Transact-SQL語(yǔ)句管理對(duì)象權(quán)限
(1) GRANT語(yǔ)句:用于授權(quán);
GRANT 對(duì)象權(quán)限名 [,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}
TO{數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
(2) REVOKE語(yǔ)句:用于收回權(quán)限;
REVOKE 對(duì)象權(quán)限名 [,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}
TO{數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
(3) DENY語(yǔ)句:用于拒絕權(quán)限。
DENY 對(duì)象權(quán)限名 [,…]ON{表名|視圖名|存儲(chǔ)過(guò)程名}
TO{數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
4、使用Transact-SQL語(yǔ)句管理語(yǔ)句權(quán)限
(1)授權(quán)語(yǔ)句:
GRANT 對(duì)象權(quán)限名 [,…] TO {數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
(2)收權(quán)語(yǔ)句;
REVOKE 對(duì)象權(quán)限名 [,…] FROM {數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
(3)拒絕權(quán)限。
DENY 對(duì)象權(quán)限名 [,…] TO {數(shù)據(jù)庫(kù)用戶名|用戶角色名}[,…]
14.6 角色
14.6.1 固定的服務(wù)器角色
是在服務(wù)器級(jí)上定義,這些角色具有完成特定服務(wù)器級(jí)管理活動(dòng)的權(quán)限,用戶不能添加、刪除或更改固定的服務(wù)器角色。用戶的登錄賬戶可以添加到固定的服務(wù)器角色中,使其成為服務(wù)器角色中的成員,從而具有服務(wù)器角色的權(quán)限。
固定的服務(wù)器角色描述
Sysadmin可在SQL Server中進(jìn)行任何活動(dòng),該角色的權(quán)限包含了所有其它固定的服務(wù)器角色權(quán)限
Serveradmin配置服務(wù)器范圍的設(shè)置
Setupadmin添加和刪除鏈接服務(wù)器,并執(zhí)行某些系統(tǒng)存儲(chǔ)過(guò)程
Securityadmin管理服務(wù)器登錄賬戶
Processadmin管理在SQL Server實(shí)例中運(yùn)行的進(jìn)程
Dbcreator創(chuàng)建、更改和刪除數(shù)據(jù)庫(kù)
Diskadmin管理磁盤(pán)文件
bulkadmin執(zhí)行BULK INSERT語(yǔ)句
固定的服務(wù)器角色的成員是系統(tǒng)的登錄賬戶,系統(tǒng)內(nèi)置的
(1) BUILTIN\Administrators組;
(2) Sa
(3) 域名\Administrators
自動(dòng)是sysadmin角色中的成員。
1、 添加固定的服務(wù)器角色成員
(1) 用企業(yè)管理器實(shí)現(xiàn);
(2) 用系統(tǒng)存儲(chǔ)過(guò)程實(shí)現(xiàn);
sp_addsrvrolemember[@loginame=]’login’[@rolename=]’role’
其中:
[@loginame=]’login’:添加到固定服務(wù)器角色的登錄名稱;
[@rolename=]’role’:要將登錄添加到的固定服務(wù)器角色的名稱。
2、 刪除固定的服務(wù)器角色成員
14.6.2 固定的數(shù)據(jù)庫(kù)角色
是在數(shù)據(jù)庫(kù)級(jí)別上定義,用戶不能添加、刪除或更改固定的服務(wù)器角色。用戶的登錄賬戶可以添加到固定的數(shù)據(jù)庫(kù)角色中,使其成為成員,從而具有數(shù)據(jù)庫(kù)角色的權(quán)限。
固定的數(shù)據(jù)庫(kù)角色描述
Db_owner在數(shù)據(jù)庫(kù)中擁有全部權(quán)限
Db_accessadmin可以添加或刪除用戶ID
Db_securityadmin可以管理數(shù)據(jù)庫(kù)角色和角色成員,并管理數(shù)據(jù)庫(kù)中的語(yǔ)句權(quán)限和對(duì)象權(quán)限
Db_ddladmin可以建立、修改和刪除數(shù)據(jù)庫(kù)對(duì)象(運(yùn)行所有的DDL語(yǔ)句)
Db_backupoperator可以進(jìn)行數(shù)據(jù)庫(kù)的備份、恢復(fù)操作
Db_datareader可以查詢數(shù)據(jù)庫(kù)中所有用戶表中的數(shù)據(jù)
Db_datawriter可以更改數(shù)據(jù)庫(kù)中所有用戶表中的數(shù)據(jù)
Db_denydatareader不允許查詢數(shù)據(jù)庫(kù)中所有用戶表中的數(shù)據(jù)
Db_denydatawriter不允許更改數(shù)據(jù)庫(kù)中所有用戶表中的數(shù)據(jù)
public默認(rèn)不具有任何權(quán)限,但用戶可對(duì)此角色進(jìn)行授權(quán)
其中public角色是一個(gè)特殊的角色:
(1) 數(shù)據(jù)庫(kù)中的每個(gè)用戶都自動(dòng)地是public角色成員,用戶不能從public角色中添加和刪除成員;
(2) 用戶可以對(duì)這個(gè)角色進(jìn)行授權(quán)。
1、添加固定的數(shù)據(jù)庫(kù)角色成員
(1) 用企業(yè)管理器實(shí)現(xiàn);
(2) 用系統(tǒng)存儲(chǔ)過(guò)程實(shí)現(xiàn);
sp_addrolemember [@rolename=]’role’,[@membername=]’security_account’
其中:
[@rolename=]’role’:當(dāng)前固定數(shù)據(jù)庫(kù)中的角色名稱;
[@membername=]’security_account’:添加到角色中的用戶名。
2、刪除固定的數(shù)據(jù)庫(kù)角色成員
14.6.3 用戶自定義的角色
屬于數(shù)據(jù)庫(kù)一級(jí)的角色,用戶可根據(jù)實(shí)際工作職能定義一系列角色,并給每個(gè)角色授予合適的權(quán)限。只需將數(shù)據(jù)庫(kù)用戶放置到合適的角色中即可。
1、建立用戶自定義庫(kù)角色
(1) 用企業(yè)管理器實(shí)現(xiàn);
(2) 用系統(tǒng)存儲(chǔ)過(guò)程實(shí)現(xiàn);
sp_addrole [@rolename=]’role’,[@ownername=]’owner’
其中:
[@rolename=]’role’:新的角色名稱;
[@ownername=]’owner’:新角色的所有者。
3、 為用戶定義的角色授權(quán);
4、 添加和刪除用戶自定義角色成員
相關(guān)推薦:
各地2015年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |