資源描述:
《ms sql入門基礎(chǔ)-權(quán)限管理--》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、MSSQL入門基礎(chǔ):權(quán)限管理>> 14.4.1權(quán)限管理簡介 用戶在登錄到SQLServer之后,其安全賬號(用戶賬號)所歸屬的NT組或角色所被授予的權(quán)限決定了該用戶能夠?qū)δ男?shù)據(jù)庫對象執(zhí)行哪種操作以及能夠訪問、修改哪些數(shù)據(jù)。在SQLServer中包括兩種類型的權(quán)限,即對象權(quán)限和語句權(quán)限?! 。?)對象權(quán)限 對象權(quán)限總是針對表、視圖、存儲(chǔ)過程而言,它決定了能對表、視圖、存儲(chǔ)過程執(zhí)行哪些操作(如UPDATE、DELETE、INSERT、EXECUTE)。如果用戶想要對某一對象進(jìn)行操作,其必須具有相應(yīng)的操作的權(quán)限。例如,當(dāng)用戶要成功修改表中數(shù)據(jù)時(shí),則前提條件是他已經(jīng)被授予表的UP
2、DATE權(quán)限?! 〔煌愋偷膶ο笾С植煌尼槍λ牟僮骼绮荒軐Ρ韺ο髨?zhí)行EXECUTE操作。我們將針對各種對象的可能操作列舉如表14-1所示: 注意:REFERENCE充許在GRANT、DENY、REVOKE語句中向有外鍵參照表中插入一行數(shù)據(jù)?! 。?)語句權(quán)限 語句權(quán)限主要指用戶是否具有權(quán)限來執(zhí)行某一語句,這些語句通常是一些具有管理性的操作,如創(chuàng)建數(shù)據(jù)庫、表、存儲(chǔ)過程等。這種語句雖然仍包含有操作如(CREATE)的對象,但這些對象在執(zhí)行該語句之前并不存在于數(shù)據(jù)庫中如創(chuàng)建一個(gè)表,在CREATETABLE語句未成功執(zhí)行前數(shù)據(jù)庫中沒有該表),所以將其歸為語句權(quán)限范疇。表1
3、4-2是所有的語句權(quán)限清單?! 「鲄?shù)含義說明如下:ALL 表示具有所有的語句或?qū)ο髾?quán)限。對于語句權(quán)限來說,只有sysadmin角色才具有所有的語句權(quán)限;對于對象權(quán)限來說,只有sysadmin和db_oent 表示用戶具有使用該語句的權(quán)限。這些語句包括: CREATEDATABASE;CREATEDEFAULT;CREATEPROCEDURECREATE RULECREATETABLE;CREATEVIEanager管理權(quán)限 在SQLServer中通過兩種途徑可實(shí)現(xiàn)對語句權(quán)限和對象權(quán)限的管理,從而實(shí)現(xiàn)對用戶權(quán)限的設(shè)定。這兩種途徑分別為面向單一用戶和面向數(shù)據(jù)庫對象
4、兩種權(quán)限設(shè)置?! ?面向單一用戶的權(quán)限設(shè)置 在SQLServerEnterpriseManager其執(zhí)行步驟為: ?。?)啟動(dòng)SQLServerEnterpriseManage,登錄到指定的服務(wù)器?! 。?)展開指定的數(shù)據(jù)庫,然后單擊Users圖標(biāo),此時(shí)在右窗格中將顯示數(shù)據(jù)庫所有用戶?! 。?)在數(shù)據(jù)庫用戶清單中選擇要進(jìn)行權(quán)限設(shè)置的用戶,右擊用戶名,然后在彈出菜單中選擇Properties,彈出DatabaseUserProperties對話框,如圖14-6所示?! 。?)在DatabaseUserProperties對話框中單擊Permission按鈕,彈出如圖14-7所
5、示的DatabaseUserProperties對話框,在該對話框中進(jìn)行對象權(quán)限設(shè)置。 ?。?)單擊確定,完成權(quán)限設(shè)置。在圖14-6的對話框中,如果在Databaserolemembership選項(xiàng)欄中選擇任何一個(gè)數(shù)據(jù)庫角色(在缺省條件下,任何數(shù)據(jù)庫用戶都至少是public角色),實(shí)際上就完成了數(shù)據(jù)庫用戶語句權(quán)限的設(shè)置。因?yàn)閷τ谶@些數(shù)據(jù)庫固定角色,SQLServer已定義了其具有哪些語句權(quán)限,例如db_oissionsforthisuser,將列出該用戶有權(quán)訪問的所有數(shù)據(jù)庫對象以及詳細(xì)的訪問權(quán)限設(shè)置信息?! ≡趫D14-7的用戶權(quán)限設(shè)置對話框,12下一頁>>>>這篇文章來自..
6、,。可以單擊Column按鈕,在打開的ColumnPermissions對話框中來決定用戶對哪些列具有哪些權(quán)限。如圖14-8所示?! ?面向數(shù)據(jù)庫對象的權(quán)限設(shè)置 在SQLServerEnterpriseManager其執(zhí)行步驟為: ?。?)啟動(dòng)SQLServerEnterpriseManager,登錄到指定服務(wù)器。 ?。?)展開指定的數(shù)據(jù)庫,從中選擇用戶對象(表、視圖、存儲(chǔ)過程)?! 。?)在右格對話框中選擇要進(jìn)行權(quán)限設(shè)置的對象,右擊該對象?! 。?)在彈出菜單中選擇Alltasks,選擇ManagePermission,此時(shí)彈出ObjectProperties對話框。如圖
7、14-9所示?! 。?)設(shè)置權(quán)限,單擊確定?! bjectProperties對話框與DatabaseUserProperties對話框極為相似,在DatabaseUserProperties對話框,我們?yōu)槟骋挥脩粼O(shè)置其對當(dāng)前數(shù)據(jù)庫所有對象的訪問權(quán)限;在ObjectProperties對話框中,我們?yōu)槟骋粩?shù)據(jù)庫對象設(shè)置當(dāng)前數(shù)據(jù)庫所有用戶對其的訪問權(quán)限。 通過點(diǎn)擊ListonlyUser/DBRolesissionsonthisobject,可以列出所有對該對象具有訪問權(quán)限