SQL用戶自定義角色的創(chuàng)建
SQL用戶自定義角色是典型的SQL Server數(shù)據(jù)庫(kù)角色,下面就為您介紹SQL用戶自定義角色的定義,以及其創(chuàng)建的方法,供您參考。
創(chuàng)建用戶定義的數(shù)據(jù)庫(kù)角色就是創(chuàng)建一組用戶,這些用戶具有相同的一組許可。如果一組用戶需要執(zhí)行在SQL Server中指定的一組操作且不存在對(duì)應(yīng)的NT組,或者沒(méi)有管理NT用戶帳號(hào)的許可,就可以在數(shù)據(jù)庫(kù)中建立一個(gè)用戶自定義的數(shù)據(jù)庫(kù)角色。SQL用戶自定義角色有兩種:標(biāo)準(zhǔn)角色和應(yīng)用程序角色。
標(biāo)準(zhǔn)角色通過(guò)對(duì)用戶權(quán)限等級(jí)的認(rèn)定而將用戶劃分為不同的用戶組,使用戶總是相對(duì)于一個(gè)或多個(gè)角色,從而實(shí)現(xiàn)管理的安全性。所有的固定數(shù)據(jù)庫(kù)角色或SQLServer管理者自定義的某一角色都是標(biāo)準(zhǔn)角色。
應(yīng)用程序角色是一種比較特殊的角色。當(dāng)我們打算讓某些用戶只能通過(guò)特定的應(yīng)用程序間接地存取數(shù)據(jù)庫(kù)中的數(shù)據(jù)而不是直接地存取數(shù)據(jù)庫(kù)數(shù)據(jù)時(shí),就應(yīng)該考慮使用應(yīng)用程序角色。
當(dāng)某一用戶使用了應(yīng)用程序角色時(shí),他便放棄了已被賦予的所有數(shù)據(jù)庫(kù)專有權(quán)限,他所擁有的只是應(yīng)用程序角色被設(shè)置的角色。通過(guò)應(yīng)用程序角色,能夠以可控制方式來(lái)限定用戶的語(yǔ)句或者對(duì)象許可。
標(biāo)準(zhǔn)角色是通過(guò)把用戶加入到不同的角色當(dāng)中而使用戶具有相應(yīng)的語(yǔ)句許可或?qū)ο笤S可,而應(yīng)用程序角色是首先將這樣或那樣的權(quán)限賦予應(yīng)用程序,然后將邏輯加入到某一特定的應(yīng)用程序中,從而通過(guò)激活應(yīng)用程序角色而實(shí)現(xiàn)對(duì)應(yīng)用程序存取數(shù)據(jù)的可控性。
只有應(yīng)用程序角色被激活,角色才是有效的,用戶也便可以且只可以執(zhí)行應(yīng)用程序角色相應(yīng)的權(quán)限,而不管用戶是一個(gè)sysadmin或者public標(biāo)準(zhǔn)數(shù)據(jù)庫(kù)角色。
在SQL Server中,可以利用企業(yè)管理器和存儲(chǔ)過(guò)程兩種方式來(lái)管理SQL用戶自定義角色。
【編輯推薦】