.NET Framework 4
·Visual Studio 2008
所有版本的 SQL Server 均使用基于角色的安全,它允許您為角色、用戶(hù)組而不是各個(gè)用戶(hù)分配權(quán)限。固定服務(wù)器和固定數(shù)據(jù)庫(kù)角色具有分配給它們的一組固定的權(quán)限。
固定服務(wù)器角色
固定服務(wù)器角色具有一組固定的權(quán)限,并且適用于整個(gè)服務(wù)器范圍。它們專(zhuān)門(mén)用于管理 SQL Server,且不能更改分配給它們的權(quán)限。可以在數(shù)據(jù)庫(kù)中不存在用戶(hù)帳戶(hù)的情況下向固定服務(wù)器角色分配登錄。
安全說(shuō)明
sysadmin 固定服務(wù)器角色包含所有其他角色并且具有無(wú)限范圍。請(qǐng)不要將這些主體添加到此角色,除非它們是高度信任的。sysadmin 角色成員對(duì)所有服務(wù)器數(shù)據(jù)庫(kù)和資源有不可撤消的管理特權(quán)。
將用戶(hù)添加到固定服務(wù)器角色時(shí),請(qǐng)仔細(xì)選擇。例如,bulkadmin 角色允許用戶(hù)將任意本地文件的內(nèi)容插入表中,這樣可能會(huì)損壞數(shù)據(jù)的完整性。有關(guān)固定服務(wù)器角色和權(quán)限的完整列表,請(qǐng)參見(jiàn) SQL Server 2005 聯(lián)機(jī)叢書(shū)。SQL Server 2000 的固定服務(wù)器角色具有與 SQL Server 2000 相同的名稱(chēng)和權(quán)限集。
固定數(shù)據(jù)庫(kù)角色
固定數(shù)據(jù)庫(kù)角色具有一組預(yù)定義的權(quán)限,這些權(quán)限旨在允許您輕松管理權(quán)限組。db_owner 角色的成員可對(duì)數(shù)據(jù)庫(kù)執(zhí)行所有配置和維護(hù)活動(dòng)。
有關(guān) SQL Server 預(yù)定義角色的更多信息,請(qǐng)參閱以下資源。
資源
說(shuō)明
Server-Level Roles(服務(wù)器層角色)和 Permissions of Fixed Server Roles(固定服務(wù)器角色的權(quán)限)
描述 SQL Server 2005 中的固定服務(wù)器角色以及與其關(guān)聯(lián)的權(quán)限。
Database-Level Roles(數(shù)據(jù)庫(kù)層角色)和 Permissions of Fixed Database Roles(固定數(shù)據(jù)庫(kù)角色的權(quán)限)
描述固定數(shù)據(jù)庫(kù)角色及與其關(guān)聯(lián)的權(quán)限
Adding a Member to a Predefined Role(向預(yù)定義角色添加成員)
描述與固定服務(wù)器和固定數(shù)據(jù)庫(kù)角色關(guān)聯(lián)的權(quán)限,并演示如何向這些角色中添加成員。
數(shù)據(jù)庫(kù)角色和用戶(hù)
要使用數(shù)據(jù)庫(kù)對(duì)象,必須將登錄映射到數(shù)據(jù)庫(kù)用戶(hù)帳戶(hù)。這樣就可以將數(shù)據(jù)庫(kù)用戶(hù)添加到數(shù)據(jù)庫(kù)角色,從而繼承與這些角色關(guān)聯(lián)的任何權(quán)限集。從 SQL Server 2005 開(kāi)始,可以授予所有權(quán)限。
當(dāng)為應(yīng)用程序設(shè)計(jì)安全性時(shí),還必須考慮 public 角色、dbo 用戶(hù)帳戶(hù)和 guest 帳戶(hù)。
公共角色
public 角色包含在每個(gè)數(shù)據(jù)庫(kù)中,包括系統(tǒng)數(shù)據(jù)庫(kù)。無(wú)法刪除該角色,也無(wú)法向其中添加用戶(hù)或從中刪除用戶(hù)。授予 public 角色的權(quán)限由所有其他用戶(hù)和角色繼承,因?yàn)槟J(rèn)情況下,它們屬于 public 角色。僅為 public 角色授予您希望所有用戶(hù)都具有的權(quán)限。
dbo 用戶(hù)帳戶(hù)
dbo 或數(shù)據(jù)庫(kù)所有者是具有在數(shù)據(jù)庫(kù)中執(zhí)行所有活動(dòng)的默示權(quán)限的用戶(hù)帳戶(hù)。sysadmin 固定服務(wù)器角色的成員會(huì)自動(dòng)映射到 dbo。
注意
以 SQL Server 2005 開(kāi)始,dbo 也是架構(gòu)名稱(chēng),如 SQL Server 中的所有權(quán)和用戶(hù)架構(gòu)分離 (ADO.NET) 中所述。
dbo 用戶(hù)帳戶(hù)經(jīng)常與 db_owner 固定數(shù)據(jù)庫(kù)角色相混淆。db_owner 的作用域是一個(gè)數(shù)據(jù)庫(kù);sysadmin 的作用域是整個(gè)服務(wù)器。db_owner 角色中的成員無(wú)法授予 dbo 用戶(hù)特權(quán)。
guest 用戶(hù)帳戶(hù)
用戶(hù)經(jīng)過(guò)身份驗(yàn)證并允許登錄 SQL Server 的實(shí)例后,用戶(hù)需要訪問(wèn)的每個(gè)數(shù)據(jù)庫(kù)中必須存在一個(gè)單獨(dú)的用戶(hù)帳戶(hù)。要求每個(gè)數(shù)據(jù)庫(kù)中具有用戶(hù)帳戶(hù)會(huì)阻止用戶(hù)連接到 SQL Server 的實(shí)例,并且會(huì)阻止用戶(hù)訪問(wèn)服務(wù)器上的所有數(shù)據(jù)庫(kù)。通過(guò)允許沒(méi)有數(shù)據(jù)庫(kù)用戶(hù)帳戶(hù)的登錄訪問(wèn)數(shù)據(jù)庫(kù),可在數(shù)據(jù)庫(kù)中包含 guest 用戶(hù)帳戶(hù)時(shí)避開(kāi)此要求。
在所有版本的 SQL Server 中,guest 帳戶(hù)均為內(nèi)置帳戶(hù)。默認(rèn)情況下,它在新的數(shù)據(jù)庫(kù)中是禁用的。如果啟用此帳戶(hù),則可以通過(guò)撤消其 CONNECT 權(quán)限(方法是執(zhí)行 Transact-SQL REVOKE CONNECT FROM GUEST 語(yǔ)句)來(lái)禁用此帳戶(hù)。在 SQL Server 2000 中,可以通過(guò)執(zhí)行 Transact-SQL sp_dropuser 或 sp_revokedbaccess 系統(tǒng)存儲(chǔ)過(guò)程來(lái)禁用此帳戶(hù)。
安全說(shuō)明
避免使用 guest 帳戶(hù);沒(méi)有其自己的數(shù)據(jù)庫(kù)權(quán)限的所有登錄都會(huì)獲取授予此帳戶(hù)的數(shù)據(jù)庫(kù)權(quán)限。如果必須使用 guest 帳戶(hù),請(qǐng)為其授予最小權(quán)限。
有關(guān) SQL Server 登錄名、用戶(hù)和角色的更多信息,請(qǐng)參閱以下資源。
資源
說(shuō)明
Identity and Access Control(標(biāo)識(shí)和訪問(wèn)控制)
包含指向描述主體、角色、憑據(jù)、安全對(duì)象和權(quán)限的主題的鏈接。
Principals(主體)
描述主體并包含指向描述服務(wù)器和數(shù)據(jù)庫(kù)角色的主題的鏈接。
Creating Security Accounts(創(chuàng)建安全帳戶(hù))和 Managing Security Accounts(管理安全帳戶(hù))
分享題目:SQLServer中的服務(wù)器和數(shù)據(jù)庫(kù)角色(ADO.NET)
本文路徑:http://m.kartarina.com/article42/cpcihc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營(yíng)銷(xiāo)、網(wǎng)站內(nèi)鏈、網(wǎng)站收錄、用戶(hù)體驗(yàn)、定制開(kāi)發(fā)、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)