帶您深入了解SQL固定數(shù)據(jù)庫(kù)角色
SQL固定數(shù)據(jù)庫(kù)角色是SQL Server中的兩種數(shù)據(jù)庫(kù)角色之一,起權(quán)限是數(shù)據(jù)庫(kù)專(zhuān)有的,下面就為您詳細(xì)介紹什么是SQL固定數(shù)據(jù)庫(kù)角色
數(shù)據(jù)庫(kù)角色是為某一用戶(hù)或某一組用戶(hù)授予不同級(jí)別的管理或訪問(wèn)數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)對(duì)象的權(quán)限,這些權(quán)限是數(shù)據(jù)庫(kù)專(zhuān)有的,并且還可以使一個(gè)用戶(hù)具有屬于同一數(shù)據(jù)庫(kù)的多個(gè)角色。SQL Server提供了兩種類(lèi)型的數(shù)據(jù)庫(kù)角色:系統(tǒng)固定角色和用戶(hù)自定義角色。
SQL固定數(shù)據(jù)庫(kù)角色
SQL固定數(shù)據(jù)庫(kù)角色是指SQL Server已經(jīng)定義了這些角色所具有的管理、訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限,而且SQL Server管理者不能對(duì)其所具有的權(quán)限進(jìn)行任何修改。SQL Server中的每一個(gè)數(shù)據(jù)庫(kù)中都有一組固定的數(shù)據(jù)庫(kù)角色,在數(shù)據(jù)庫(kù)中使用SQL固定數(shù)據(jù)庫(kù)角色可以將不同級(jí)別的數(shù)據(jù)庫(kù)管理工作分給不同的角色,從而有效地實(shí)現(xiàn)工作權(quán)限的傳遞。SQL Server提供了十種常用的固定數(shù)據(jù)庫(kù)角色來(lái)授予組合數(shù)據(jù)庫(kù)級(jí)管理員權(quán)限,這些SQL固定數(shù)據(jù)庫(kù)角色信息存儲(chǔ)在系統(tǒng)表sysusers中。其含義如下:
public:
db_owner:在數(shù)據(jù)庫(kù)中有全部權(quán)限。
db_accessadmin:可以添加或刪除用戶(hù)ID。
db_ddladmin:可以發(fā)出ALL DDL操作的所有權(quán)。
db_securityadmin:可以管理全部權(quán)限、對(duì)象所有權(quán)、角色和角色成員資格。
db_backupoperator:可以發(fā)出DBCC、CHECKPOINT和BACKUP語(yǔ)句。
db_datareader:可以選擇數(shù)據(jù)庫(kù)內(nèi)任何用戶(hù)表中的所有數(shù)據(jù)。
db_datawriter:可以更改數(shù)據(jù)庫(kù)內(nèi)任何用戶(hù)表中的所有數(shù)據(jù)。
db_denydatareader:不能選擇數(shù)據(jù)庫(kù)內(nèi)任何用戶(hù)表中的任何數(shù)據(jù)。
db_denydatawriter:不能更改數(shù)據(jù)庫(kù)內(nèi)任何用戶(hù)表中的任何數(shù)據(jù)。
在固定的數(shù)據(jù)庫(kù)角色中,public是一個(gè)特殊的數(shù)據(jù)庫(kù)角色,數(shù)據(jù)庫(kù)中的每個(gè)用戶(hù)都是其成員。不能將用戶(hù)、組或其他角色指定給public角色,在每一個(gè)數(shù)據(jù)庫(kù)中都包含public角色,且不能刪除這個(gè)角色。
【編輯推薦】