『壹』 sql server2005里什麼叫角色分哪兩種
分為:伺服器級別角色和資料庫級別的角色 伺服器級別角色 固定伺服器角色在其作用域內屬於伺服器范圍。固定伺服器角色的每個成員都可以向其所屬角色添加其他登錄名。 固定伺服器角色有: bulkadmin dbcreator diskadmin processadmin securityadmin serveradmin setupadmin sysadmin 資料庫級別的角色 固定資料庫角色是在資料庫級別定義的,並且存在於每個資料庫中。 db_owner 和 db_securityadmin 資料庫角色的成員可以管理固定資料庫角色成員身份;但是,只有 db_owner 資料庫的成員可以向 db_owner 固定資料庫角色中添加成員。 固定資料庫角色包括: db_accessadmin db_backupoperator db_datareader db_datawriter db_ddladmin db_denydatareader db_denydatawriter db_owner db_securityadmin public 資料庫角色 每個資料庫用戶都屬於 public 資料庫角色。當尚未對某個用戶授予或拒絕對安全對象的特定許可權時,則該用戶將繼承授予該安全對象的 public 角色的許可權。
『貳』 sql server 伺服器角色和資料庫角色有什麼區別
顧名思義!
伺服器角色就是針對整個資料庫伺服器設定的角色和許可權。
資料庫角色就是針對某個特定資料庫設定的角色和許可權。
給你舉個例子:
setupadmin
該角色僅限於管理鏈接伺服器和啟動過納凳程。這個是針對整個伺服器許可權的角色禪脊。
db_datareader
能夠在資料庫中所有的用戶表上執行SELECT語句,這個就是資料庫角色,是針對特定某個資料庫的許可權設置,只對該特定數據洞襲旅庫有效
『叄』 sqlserver中sa用戶的角色是public
是。
SQLServer的public伺服器角色在伺服器上創建的每個登錄名都是public,伺服器角色的成員,它只擁派皮有的權氏羨純限是VIEWANYDATABASE。
sqlserver是一種資料庫伺服器,是由微軟公司開發殲咐的一種資料庫管理的系統,其中sql是指結構化查詢語言,SQL語言主要是用於資料庫的建立和溝通。
『肆』 sql 資料庫中syadmin固定伺服器怎麼添加角色
資料庫角色的成員可以分為如下幾類:
Windows用戶組或用戶賬戶
SQL Server登錄
其他角色
SQL Server的安全體系結構中包括了幾個含有特定隱含許可權的角色。除了資料庫擁有者創建的角色之外,還有兩類預定義的角色。這些可以創建的角色可以分為如下幾類:
固定伺服器
固定資料庫
用戶自定義
固定伺服器
由於固定伺服器是在伺服器層次上定義的,因此它們位於從屬於資料庫伺服器的資料庫外面。下表列出了所有現有的固定伺服器角色。
固定伺服器角色
說 明
sysadmin
執行SQL Server中的任何動作
serveradmin
配置伺服器設置
setupadmin
安裝復制和管理擴展過程
securityadmin
管理登錄和CREATE DATABASE的許可權以及閱讀審計
processadmin
管理SQL Server進程
dbcreator
創建和修改資料庫
diskadmin
管理磁碟文件
下面兩個系統過程用來添加或刪除固定伺服器角色成員:
sp_addsrvrolemember
sp_dropsrvrolemember
注意:您不能添加、修改或刪除固定伺服器角色。另外,只有固定伺服器角色的成員才能執行上述兩個系統過程來從角色中添加或刪除登錄賬戶。
sa登錄
sa登錄是系統管理員的登錄。在以前的SQL Server版本中不存在角色,sa登錄具有所有可能的關於系統管理工作的許可權。在SQL Server 2005中,sa登錄保持了向後兼容性。sa登錄永遠是固定伺服器角色syadmin中的成員,並且不能從該角色中刪除。
注意:只有當沒有其他方法登錄到SQL Server系統中時,再使用sa登錄。
固定伺服器角色及其許可權
在某個SQL Server系統中,每個固定伺服器角色都有其隱含的許可權。使用系統過程sp_srvrolepermission可以瀏覽每個固定伺服器角色的許可權。該系統過程的語法形式為:
sp_srvrolepermission[[@srvrolename =] 'role']
如果沒有指定role的值,那麼所有的固定伺服器角色的許可權都將顯示出來。下面的部分將討論每個固定伺服器角色的許可權。
1. sysadmin
固定伺服器角色sysadmin的成員被賦予了SQL Server系統中所有可能的許可權。例如,只有這個角色中的成員(或一個被這個角色中的成員賦予了CREATE DATABASE許可權的用戶)才能夠創建資料庫。
固定伺服器角色和sa登錄之間有著特殊的關系。sa登錄一直都是固定伺服器角色中的成員,並且不能從該角色中刪除。
2. serveradmin
固定伺服器角色serveradmin的成員可以執行如下的動作:
向該伺服器角色中添加其他登錄
運行dbcc pintable命令(從而使表常駐於主內存中)
運行系統過程sp_configure(以顯示或更改系統選項)
運行reconfigure選項(以更新系統過程sp_configure所做的所有改動)
使用shutdown命令關掉資料庫伺服器
運行系統過程sp_tableoption為用戶自定義表設置選項的值
3. setupadmin
固定伺服器角色setupadmin中的成員可以執行如下的動作:
向該伺服器角色中添加其他登錄
添加、刪除或配置鏈接的伺服器
執行一些系統過程,如sp_serveroption
4. securityadmin
固定伺服器角色securitypadmin中的成員可以執行關於伺服器訪問和安全的所有動作。這些成員可以進行如下的系統動作:
向該伺服器角色中添加其他登錄
讀取SQL Server的錯誤日誌
運行如下的系統過程:如sp_addlinkedsrvlogin、sp_addlogin、sp_defaultdb、sp_defaultlanguage、sp_denylogin、sp_droplinkedsrvlogin、sp_droplogin、sp_grantlogin、sp_helplogins、sp_remoteoption和sp_revokelogin(所有這些系統過程都與系統安全相關。)
5. processadmin
固定伺服器角色processadmin中的成員用來管理SQL Server進程,如中止用戶正在運行的查詢。這些成員可以進行如下的動作:
向該伺服器角色中添加其他登錄
執行KILL命令(以取消用戶進程)
6. dbcreator
固定伺服器角色dbcreator中的成員用來管理與資料庫創建和修改有關的所有動作。這些成員可以進行如下的動作:
向該伺服器角色中添加其他登錄
運行CREATE DATABASE和ALTER DATABASE語句
使用系統過程sp_renamedb來修改資料庫的名稱
7. diskadmin
固定伺服器角色diskadmin的成員可以進行如下與用來存儲資料庫對象的文件和文件組有關的動作:
向該伺服器角色中添加其他登錄
運行如下系統過程:sp_dmpdevice和sp_dropdevice。
運行DISK INIT語句
固定資料庫角色
固定資料庫角色在資料庫層上進行定義,因此它們存在於屬於資料庫伺服器的每個資料庫中。下表列出了所有的固定資料庫角色。
固定資料庫角色
說 明
db_owner
可以執行資料庫中技術所有動作的用戶
db_accessadmin
可以添加、刪除用戶的用戶
db_datareader
可以查看所有資料庫中用戶表內數據的用戶
db_datawriter
可以添加、修改或刪除所有資料庫中用戶表內數據的用戶
db_ddladmin
可以在資料庫中執行所有DDL操作的用戶
db_securityadmin
可以管理資料庫中與安全許可權有關所有動作的用戶
db_backoperator
可以備份資料庫的用戶(並可以發布DBCC和CHECKPOINT語句,這兩個語句一般在備份前都會被執行)
db_denydatareader
不能看到資料庫中任何數據的用戶
db_denydatawriter
不能改變資料庫中任何數據的用戶
除了上表中列出的固定資料庫角色之外,還有一種特殊的固定資料庫角色,名為public,這里將首先介紹這一角色。
public角色
public角色是一種特殊的固定資料庫角色,資料庫的每個合法用戶都屬於該角色。它為資料庫中的用戶提供了所有默認許可權。這樣就提供了一種機制,即給予那些沒有適當許可權的所有用戶以一定的(通常是有限的)許可權。public角色為資料庫中的所有用戶都保留了默認的許可權,因此是不能被刪除的。
一般情況下,public角色允許用戶進行如下的操作:
使用某些系統過程查看並顯示master資料庫中的信息
執行一些不需要一些許可權的語句(例如PRINT)
固定資料庫角色及其許可權
在資料庫中,每個固定資料庫角色都有其特定的許可權。這就意味著對於某個資料庫來說,固定資料庫角色的成員的許可權是有限的。使用系統過程sp_dbfixedrolepermission就可以查看每個固定資料庫角色的許可權。該系統過程的語法為:
sp_db.xedrolepermission [[@rolename =] 'role']
如果沒有指定role的值,那麼所有固定資料庫角色的許可權都可以顯示出來。下面的幾節將討論每個固定資料庫角色的許可權。
1. db_owner
固定資料庫角色db_owner的成員可以在特定的資料庫中進行如下的動作:
向其他固定資料庫角色中添加成員,或從其中刪除成員
運行所有的DDL語句
運行BACKUP DATABASE和BACKUP LOG語句
使用CHECKPOINT語句顯式地啟動檢查點進程
運行下列dbcc命令:dbcc checkalloc、dbcc checkcatalog、dbcc checkdb、dbcc updateusage
授予、取消或剝奪每一個資料庫對象上的下列許可權:SELECT、INSERT、UPDATE、DELETE和REFERENCES
使用下列系統過程向資料庫中添加用戶或角色:sp_addapprole、sp_addrole、sp_addrolemember、sp_approlepassword、sp_changeobjectowner、sp_dropapprole、sp_droprole、sp_droprolemember、sp_dropuser、sp_grantdbaccess
使用系統過程sp_rename為任何資料庫對象重新命名
2. db_accessadmin
固定資料庫角色db_accessadmin的成員可以執行與資料庫訪問有關的所有動作。這些角色可以在具體的資料庫中執行下列操作:
運行下列系統過程:sp_addalias、sp_dropalias、sp_dropuser、sp_grantdbacess、sp_revokedbaccess
為Windows用戶賬戶、Windows組和SQL Server登錄添加或刪除訪問
3. dbdatareader
固定資料庫角色dbdatareader的成員對資料庫中的資料庫對象(表或視圖)具有SELECT許可權。然而,這些成員不能把這個許可權授予其他任何用戶或角色。(這個限制對REVOKE語句來說同樣成立。)
4. dbdatawriter
固定資料庫角色dbdatawriter的成員對資料庫中的資料庫對象(表或視圖)具有INSERT、UPDATE和DELETE許可權。然而,這些成員不能把這個許可權授予其他任何用戶或角色。(這個限制對REVOKE語句來說也同樣成立。)
5. db_ddladmin
固定資料庫角色db_ddladmin的成員可以進行如下的動作:
運行所有DDL語句
對任何錶上授予REFERENCESE許可權
使用系統過程sp_procoption和sp_recompile來修改任何存儲過程的結構
使用系統過程sp_rename為任何資料庫對象重命名
使用系統過程sp_tableoption和sp_changeobjectowner分別修改表的選項和任何資料庫對象的擁有者
6. db_securityadmin
固定資料庫角色db_securityadmin的成員可以管理資料庫中的安全。這些成員可以進行如下的動作:
運行與安全有關的所有Transact-SQL語句(GRANT、DENY和REVOKE)
運行以下系統過程:sp_addapprole、sp_addrole、sp_addrolemember、sp_approlepassword、sp_changeobjectowner、sp_dropapprole、sp_droprole、sp_droprolemember
7. db_backupoperator
固定資料庫角色db_backupoperator的成員可以管理資料庫備份的過程。這些成員可以進行如下動作:
運行BACKUP DATABASE和BACKUP LOG語句
用CHECKPOINT語句顯式地啟動檢查點進程
運行如下dbcc命令:dbcc checkalloc、dbcc checkcatalog、dbcc checkdb、dbcc updateusage
8. db_denydatareader和db_denydatawriter
顧名思義,固定資料庫角色db_denydatareader的成員對資料庫中的資料庫對象(表或視圖)沒有SELECT許可權。如果資料庫中含有敏感數據並且其他用戶不能讀取這些數據,那麼就可以使用這個角色。
固定資料庫角色db_denydatawriter的成員對資料庫中的任何資料庫對象(表或視圖)沒有INSERT、UPDATE和DELETE許可權。
『伍』 SQL Server 2000的角色分哪兩種各自的功能是什麼
SQL SERVER 2000 使用哪三種類型的角色 ?每種角色的作用是什麼? 固定的伺服器角色 固定的資料庫角色 應用程序角色 難道是這3種么?
『陸』 sql server里 伺服器角色都是什麼意思
各個角色是對應不同許可權的,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_ssisltser
這些資料庫角色的成員可以管理和使用 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 角色的許可權。
『柒』 系統內置角色為創建資料庫角色
系統內置角色為創建資料庫角色方法/步驟如下
1/6分步閱讀
第一步,連接對象資源管理器,點擊打開資料庫book,依此找到「安全性---角色」,點擊這個菜單項,如下圖所示:
2/6
第二步,選中「資料庫角色」滑鼠右鍵,新建資料庫角色,打開新建窗口,如下圖所示:
德國Statista數據平台 - 為您提供行業專業知識及數據
StatistaGmbH廣告
3/6
第三步,輸入角色名稱和所有者,分別為「Control」和「dbo」,注意所有者,如下圖所示:
4/6
第四步,點擊添加按鈕,選擇資料庫用戶或角色;單擊瀏覽按鈕,查詢用戶並確定,添加正確的角色用戶,如下圖所示:
5/6
第五步,確定完畢後,框框里選擇此角色的成員就為選擇的成員角色,如下圖所示:
6/6
第六步,選擇此角色擁有的框架,這里選擇「dbo」,然後點擊確定,完成操作,如下圖所示:
注意事項
了解創裂歷建資料庫角色的過程
注意角色的方法和用法
SQL 資料庫 客戶端
編輯於2018-01-16,內容僅供參考並受版權保護
贊踩分享閱讀全文
德國Statista數據平台 - 為您提供行業專業知識及數據
我們為您提供值得信賴的商業統計數據,報告和市場預測,讓您的研究更加高效專業。立即免費注冊賬戶,體驗來自Statista以及全球25,000+知名數據點及合作夥伴的獨家內容
StatistaGmbH廣告
伺服器京東-精品惠聚,天天特價,嗨GO不停!
Dell 定製方案 項目16
¥767 元
戴爾(DELL)伺服器方案 項目8
¥19249 元
Dell 定製方案 聯想X1 X270 X280 T470S充電器
¥200 元
企殲源判業級de產ll品 H3C LS-5024PV5-EI 24個千兆電口4個千兆光口 全千兆管理型氏改
¥1550 元
京東廣告
數據服務-RestCloud全新的ETL社區版,免費下載,永久使用
根據資料庫相關內容為您推薦數據服務
數據集成ETL,在數據處理層面,ETL不僅提供近100+數據處理組件,更多組件不斷迭代推出中,提供多租戶的數據集成開發作業,使企業大規模數據集成更加輕松,更安全。
谷雲科技(廣州)廣告
相關經驗
sql server資料庫文件存儲位置怎麼找
2.2萬人看過
PyQt5-QLabel 如何為標簽文本設置超鏈接
3618人看過
sql2016-買東西逛淘寶,榜單好物隨心入!
淘寶
『捌』 資料庫固定的8個伺服器角色各有什麼許可權
8的等級最高,相當於sqlserver的sa賬戶和oracle的sysadmin,可以做一切操作,包括以下七種角色,事實上一般以下七種角色的許可權都是他來指派的,企業中一般嚴禁這個賬戶登陸的,因為一旦誤操作將會造成災難性損失。
1管理資料庫大小,數據空間大小以及數據日誌大小等
2擁有建立資料庫的許可權
3對已經分配磁碟空間進行分配
4可以管理進程,比如剔除一些非法進程
5可以管理連接許可權,用戶許可權等。
6這個可頃世以啟李乎談動伺服器,對伺服器的屬性進行分配(連接池、cpu、內存空間等),貌似是sqlserver特有
7這個角色很多資料庫是沒有的,比如sqlserver2000就是沒有的,oracle8以前好像也是沒有的,可以安裝資料庫以及刪除資料庫(在非常安全控制地方這種賬戶是沒有連接許可權的,也就是說只能安裝,但是不能讀取裡面的數據)
這些許可權各不相同,所以很難說是對伺服器哪碰的還是資料庫的,比如7這種,根本說不上是不是伺服器級別的,因為它只有安裝許可權,可以認為是系統級別的,事實上,只有sqlserver存在伺服器和資料庫的區別,一般的諸如db2和oracle中的所謂伺服器指的是那台機器而不是一個sqlserver意義上的伺服器,具體情況具體對待
其實主要角色不止這些,還有諸如備份管理員backupadmin,數據清理員英文忘記了等等。
『玖』 什麼是資料庫角色
角色是一個強大的工具,使您得以將用戶集中到一個單元中,然後對該單元應用許可權。對一個角色授予、拒絕或廢除的許可權也適用於該角色的任何成員。可以建立一個角色來代表單位中一類工作人員所執行的工作,然後給這個角色授予適當的許可權。當工作人員開始工作時,只須將他們添加為該角色成員,當他們離開工作時,將他們從該角色中刪除。而不必在每個人接受或離開工作時,反復授予、拒絕和廢除其許可權。許可權在用戶成為角色成員時自動生效。
Microsoft® Windows NT® 和 Windows® 2000 組的使用方式與角色很相似。有關更多信息,請參見組。
如果根據工作職能定義了一系列角色,並給每個角色指派了適合這項工作的許可權,則很容易在資料庫中管理這些許可權。之後,不用管理各個用戶的許可權,而只須在角色之間移動用戶即可。如果工作職能發生改變,則只須更改一次角色的許可權,並使更改自動應用於角色的所有成員,操作比較容易。
在 Microsoft® SQL Server™ 2000 和 SQL Server 7.0 版中,用戶可屬於多個角色。
以下腳本說明登錄、用戶和角色的添加,並為角色授予許可權。
USE master
GO
sp_grantlogin 'NETDOMAIN\John'
GO
sp_defaultdb 'NETDOMAIN\John', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Sarah'
GO
sp_defaultdb 'NETDOMAIN\Sarah', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Betty'
GO
sp_defaultdb 'NETDOMAIN\Betty', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Ralph'
GO
sp_defaultdb 'NETDOMAIN\Ralph', 'courses'
GO
sp_grantlogin 'NETDOMAIN\Diane'
GO
sp_defaultdb 'NETDOMAIN\Diane', 'courses'
GO
USE courses
GO
sp_grantdbaccess 'NETDOMAIN\John'
GO
sp_grantdbaccess 'NETDOMAIN\Sarah'
GO
sp_grantdbaccess 'NETDOMAIN\Betty'
GO
sp_grantdbaccess 'NETDOMAIN\Ralph'
GO
sp_grantdbaccess 'NETDOMAIN\Diane'
GO
sp_addrole 'Professor'
GO
sp_addrole 'Student'
GO
sp_addrolemember 'Professor', 'NETDOMAIN\John'
GO
sp_addrolemember 'Professor', 'NETDOMAIN\Sarah'
GO
sp_addrolemember 'Professor', 'NETDOMAIN\Diane'
GO
sp_addrolemember 'Student', 'NETDOMAIN\Betty'
GO
sp_addrolemember 'Student', 'NETDOMAIN\Ralph'
GO
sp_addrolemember 'Student', 'NETDOMAIN\Diane'
GO
GRANT SELECT ON StudentGradeView TO Student
GO
GRANT SELECT, UPDATE ON ProfessorGradeView TO Professor
GO
該腳本給 John 和 Sarah 教授提供了更新學生成績的許可權,而學生 Betty 和 Ralph 只能選擇他們自己的成績。Diane 因同時教兩個班,所以添加到兩個角色中。ProfessorGradeView 視圖應將教授限制在自己班學生的行上,而 StudentGradeView 應限制學生只能選擇自己的成績。
SQL Server 2000 和 SQL Server 7.0 版在安裝過程中定義幾個固定角色。可以在這些角色中添加用戶以獲得相關的管理許可權。下面是伺服器范圍內的角色。
固定伺服器角色
描述
sysadmin
可以在 SQL Server 中執行任何活動。
serveradmin
可以設置伺服器范圍的配置選項,關閉伺服器。
setupadmin
可以管理鏈接伺服器和啟動過程。
securityadmin
可以管理登錄和 CREATE DATABASE 許可權,還可以讀取錯誤日誌和更改密碼。
processadmin
可以管理在 SQL Server 中運行的進程。
dbcreator
可以創建、更改和除去資料庫。
diskadmin
可以管理磁碟文件。
bulkadmin
可以執行 BULK INSERT 語句。
可以從 sp_helpsrvrole 獲得固定伺服器角色的列表,可以從 sp_srvrolepermission 獲得每個角色的特定許可權。
每個資料庫都有一系列固定資料庫角色。雖然每個資料庫中都存在名稱相同的角色,但各個角色的作用域只是在特定的資料庫內。例如,如果 Database1 和 Database2 中都有叫 UserX 的用戶 ID,將 Database1 中的 UserX 添加到 Database1 的 db_owner 固定資料庫角色中,對 Database2 中的 UserX 是否是 Database2 的 db_owner 角色成員沒有任何影響。
固定資料庫角色
描述
db_owner
在資料庫中有全部許可權。
db_accessadmin
可以添加或刪除用戶 ID。
db_securityadmin
可以管理全部許可權、對象所有權、角色和角色成員資格。
db_ddladmin
可以發出 ALL DDL,但不能發出 GRANT、REVOKE 或 DENY 語句。
db_backupoperator
可以發出 DBCC、CHECKPOINT 和 BACKUP 語句。
db_datareader
可以選擇資料庫內任何用戶表中的所有數據。
db_datawriter
可以更改資料庫內任何用戶表中的所有數據。
db_denydatareader
不能選擇資料庫內任何用戶表中的任何數據。
db_denydatawriter
不能更改資料庫內任何用戶表中的任何數據。
可以從 sp_helpdbfixedrole 獲得固定資料庫角色的列表,可以從 sp_dbfixedrolepermission 獲得每個角色的特定許可權。
資料庫中的每個用戶都屬於 public 資料庫角色。如果想讓資料庫中的每個用戶都能有某個特定的許可權,則將該許可權指派給 public 角色。如果沒有給用戶專門授予對某個對象的許可權,他們就使用指派給 public 角色的許可權。
『拾』 怎樣設置 sql 2005 伺服器角色 資料庫
/*伺服器角色*/
sysadmin
--在 SQL Server 中進行任何活動。該角色的許可權跨越所有其它固定伺服器角色。
serveradmin
--配置伺服器范圍的設置。
setupadmin
--添加和刪除鏈接伺服器,並執行某些系統存儲過程(如 sp_serveroption)。
securityadmin
--管理伺服器登錄。
processadmin
--管理在 SQL Server 實例中運行的進程。
dbcreator
--創建和改變資料庫。
diskadmin
--管理磁碟文件。
bulkadmin
--執行 BULK INSERT 語句。
/*資料庫角色*/
public
public 角色
--public 角色是一個特殊的資料庫角色,每個資料庫用戶都屬於它。public 角色:
--捕獲資料庫中用戶的所有默認許可權。
--無法將用戶、組或角色指派給它,因為默認情況下它們即屬於該角色。
--含在每個資料庫中,包括 master、msdb、tempdb、model 和所有用戶資料庫。
--無法除去。
db_owner
--進行所有資料庫角色的活動,以及資料庫中的其它維護和配置活動。
--該角色的許可權跨越所有其它固定資料庫角色。
db_accessadmin
--在資料庫中添加或刪除 Windows NT 4.0 或 Windows 2000 組和用戶以及 SQL Server 用戶。
db_datareader
--查看來自資料庫中所有用戶表的全部數據。
db_datawriter
--添加、更改或刪除來自資料庫中所有用戶表的數據
db_ddladmin
--添加、修改或除去資料庫中的對象(運行所有 DDL)
db_securityadmin
--管理 SQL Server 2000 資料庫角色的角色和成員,並管理資料庫中的語句和對象許可權
db_backupoperator
--有備份資料庫的許可權
db_denydatareader
--拒絕選擇資料庫數據的許可權
db_denydatawriter
--拒絕更改資料庫數據的許可權