資料庫角色成員說明

2021-07-31 04:15:00 字數 3451 閱讀 6157

各個角色是對應不同許可權的,sql server中有很多許可權,可以把這些許可權組合或單獨賦給各個角色,從而使不同角色的使用者的許可權不同,你列出的都是內建角色。你看看下面這些對你有沒有幫助,希望你解決你的問題。

為便於管理資料庫中的許可權,sql server 提供了若干「角色」,這些角色是用於分組其他主體的安全主體。它們類似於 microsoft windows 作業系統中的組。資料庫級角色的許可權作用域為資料庫範圍。

sql server 中有兩種型別的資料庫級角色:資料庫中預定義的「固定資料庫角色」和您可以建立的「靈活資料庫角色」。

固定資料庫角色是在資料庫級別定義的,並且存在於每個資料庫中。db_owner 和 db_securityadmin 資料庫角色的成員可以管理固定資料庫角色成員身份。但是,只有 db_owner 資料庫角色的成員能夠向 db_owner 固定資料庫角色中新增成員。msdb 資料庫中還有一些特殊用途的固定資料庫角色。

您可以向資料庫級角色中新增任何資料庫帳戶和其他 sql server 角色。固定資料庫角色的每個成員都可向同乙個角色新增其他登入名。

請不要將靈活資料庫角色新增為固定角色的成員。這會導致意外的許可權公升級。

下表顯示了固定資料庫級角色及其能夠執行的操作。所有資料庫中都有這些角色。

資料庫級別的角色名稱 說明

db_owner

db_owner 固定資料庫角色的成員可以執行資料庫的所有配置和維護活動,還可以刪除資料庫。

db_securityadmin

db_securityadmin 固定資料庫角色的成員可以修改角色成員身份和管理許可權。向此角色中新增主體可能會導致意外的許可權公升級。

db_accessadmin

db_accessadmin 固定資料庫角色的成員可以為 windows 登入名、windows 組和 sql server 登入名新增或刪除資料庫訪問許可權。

db_backupoperator

db_backupoperator 固定資料庫角色的成員可以備份資料庫。

db_ddladmin

db_ddladmin 固定資料庫角色的成員可以在資料庫中執行任何資料定義語言 (ddl) 命令。

db_datawriter

db_datawriter 固定資料庫角色的成員可以在所有使用者表中新增、刪除或更改資料。

db_datareader

db_datareader 固定資料庫角色的成員可以從所有使用者表中讀取所有資料。

db_denydatawriter

db_denydatawriter 固定資料庫角色的成員不能新增、修改或刪除資料庫內使用者表中的任何資料。

db_denydatareader

db_denydatareader 固定資料庫角色的成員不能讀取資料庫內使用者表中的任何資料。

有關資料庫級固定角色許可權的特定資訊,請參閱固定資料庫角色的許可權(資料庫引擎)。

msdb 角色

msdb 資料庫中包含下表顯示的特殊用途的角色。

msdb 角色名稱 說明

db_ssisadmin

db_ssisoperator

db_ssisltduser

這些資料庫角色的成

員可以管理和使用 ssis。從早期版本公升級的 sql server 例項可能包含使用 data transformation services (dts)(而不是 ssis)命名的舊版本角色。有關詳細資訊,請參閱 使用 integration services 角色。

dc_admin

dc_operator

dc_proxy

這些資料庫角色的成員可以管理和使用資料收集器。有關詳細資訊,請參閱資料收集器的安全性。

policyadministratorrole

db_ policyadministratorrole 資料庫角色的成員可以對基於策略的管理策略和條件執行所有配置和維護活動。有關詳細資訊,請參閱使用基於策略的管理來管理伺服器。

servergroupadministratorrole

servergroupreaderrole

這些資料庫角色的成員可以管理和使用註冊的伺服器組。有關詳細資訊,請參閱建立伺服器組。

db_ssisadmin 角色和 dc_admin 角色的成員也許可以將其許可權提公升到 sysadmin。之所以會發生此許可權提公升,是因為這些角色可以修改 integration services 包,而 sql server 可以使用 sql server **的 sysadmin 安全上下文來執行 integration services 包。若要防止在執行維護計畫、資料收集組和其他 integration services 包時出現此許可權提公升,請將執行包的 sql server **作業配置為使用擁有有限許可權的**帳戶,或只將 sysadmin 成員新增到 db_ssisadmin 和 dc_admin 角色。

使用伺服器級角色

下表說明了用於伺服器級角色的命令、檢視和函式。

功能 型別 說明

sp_helpdbfixedrole (transact-sql)

元資料返回固定資料庫角色的列表。

sp_dbfixedrolepermission (transact-sql)

元資料顯示固定資料庫角色的許可權。

sp_helprole (transact-sql)

元資料返回當前資料庫中有關角色的資訊。

sp_helprolemember (transact-sql)

元資料返回有關當前資料庫中某個角色的成員的資訊。

sys.database_role_members (transact-sql)

元資料為每個資料庫角色的每個成員返回一行。

is_member (transact-sql)

元資料指示當前使用者是否為指定 microsoft windows 組或 microsoft sql server 資料庫角色的成員。

create role (transact-sql)

命令在當前資料庫中建立新的資料庫角色。

alter role (transact-sql)

命令更改資料庫角色的名稱。

drop role (transact-sql)

命令從資料庫中刪除角色。

sp_addrole (transact-sql)

命令在當前資料庫中建立新的資料庫角色。

sp_droprole (transact-sql)

命令從當前資料庫中刪除資料庫角色。

sp_addrolemember (transact-sql)

命令為當前資料庫中的資料庫角色新增資料庫使用者、資料庫角色、windows 登入名或 windows 組。

sp_droprolemember (transact-sql)

命令從當前資料庫的 sql server 角色中刪除安全帳戶。

public 資料庫角色

每個資料庫使用者都屬於 public 資料庫角色。如果未向某個使用者授予或拒絕對安全物件的特定許可權時,該用

戶將繼承授予該物件的 public 角色的許可權。

資料庫角色成員身份

最佳答案 sql server 聯機叢書有詳細解釋 db accessadmin 固定資料庫角色的成員可以為 windows 登入帳戶 windows 組和 sql server 登入帳戶新增或刪除訪問許可權。db backupoperator 固定資料庫角色的成員可以備份該資料庫。db datar...

資料庫角色成員身份

db accessadmin 在資料庫中新增或刪除windows nt4.0或windows2000使用者和組以及sql server使用者 db backupoperator 有備份資料庫的許可權 db datareader 檢視來自資料庫中所有使用者表的全部資料 db datawriter 新增...

sqlserver 資料庫角色成員身份

db accessadmin 固定資料庫角色的成員可以為 windows 登入名 windows 組和 sql server 登入名新增或刪除資料庫訪問許可權。db backupoperator 固定資料庫角色的成員可以備份該資料庫。db datareader 固定資料庫角色的成員可以從所有使用者表...