SQLServer 2005 控制用戶權(quán)限訪問(wèn)表圖文教程
一、需求
在管理數(shù)據(jù)庫(kù)過(guò)程中,我們經(jīng)常需要控制某個(gè)用戶訪問(wèn)數(shù)據(jù)庫(kù)的權(quán)限,比如只需要給這個(gè)用戶訪問(wèn)某個(gè)表的權(quán)限,甚至是CRUD的權(quán)限,更小粒度的還可以去到某幾個(gè)字段的訪問(wèn)權(quán)限。寫這篇文章就是說(shuō)明下這個(gè)操作過(guò)程。
其實(shí)這只是SQL Server權(quán)限管理很簡(jiǎn)單的一小塊,有些地方并沒有深入理解和講述,只是希望對(duì)一些剛?cè)腴T的童鞋有幫助,其它大俠就當(dāng)是:我當(dāng)堂嚇一跳,然后得啖笑。(賭圣)
二、操作步驟
1. 首先進(jìn)入數(shù)據(jù)庫(kù)級(jí)別的【安全性】-【登錄名】-【新建登錄名】
(圖1:新建登錄名)
2. 在【常規(guī)】選項(xiàng)卡中,如下圖所示,創(chuàng)建登陸名,并設(shè)置默認(rèn)的數(shù)據(jù)庫(kù)
(圖2:設(shè)置選項(xiàng))
3. 在【用戶映射】選項(xiàng)卡中,如下圖所示,勾選需要設(shè)置的數(shù)據(jù)庫(kù),并設(shè)置【架構(gòu)】,點(diǎn)擊【確認(rèn)】按鈕,完成創(chuàng)建用戶的操作
(圖3:選擇對(duì)應(yīng)數(shù)據(jù)庫(kù))
4. 現(xiàn)在我們就可以對(duì)TestLog數(shù)據(jù)庫(kù)中的User表進(jìn)行權(quán)限的設(shè)置了,【表】-【 屬性】
(圖4:選擇對(duì)應(yīng)表)
5. 在【權(quán)限】選項(xiàng)卡中,如下圖所示,依此點(diǎn)擊【添加】-【瀏覽】-【選擇對(duì)象】
(圖5:設(shè)置訪問(wèn)表的用戶)
6. 在上面點(diǎn)擊【確認(rèn)】后,我們就可以下面的列表中找到對(duì)應(yīng)的權(quán)限,如果你還想細(xì)化到列的權(quán)限的話,右下角還有一個(gè)【列權(quán)限】的按鈕可以進(jìn)行設(shè)置,點(diǎn)擊【確認(rèn)】按鈕就完成了這些權(quán)限的設(shè)置了
(圖6:權(quán)限列表)
7. 現(xiàn)在就使用TestUser用戶登陸數(shù)據(jù)庫(kù)了,登陸后如下圖所示,現(xiàn)在只能看到一個(gè)表了
(圖7:效果)
三、注意事項(xiàng)
1. 在上面的第3步驟中需要注意:如果這里沒有選擇對(duì)應(yīng)的數(shù)據(jù)庫(kù)的話,之后去TestLog數(shù)據(jù)庫(kù)中是找不到TestUser。
(圖8:找不到TestUser用戶)
2. 在上面的第3步驟,設(shè)置完TestLog數(shù)據(jù)后,需要點(diǎn)擊【確認(rèn)】按鈕,完成創(chuàng)建用戶操作,如果這個(gè)時(shí)候去設(shè)置【安全對(duì)象】,是無(wú)法在【添加】-【特定對(duì)象】-【對(duì)象類型】-【登陸名】-【瀏覽】中找到剛剛新建的TestUser用戶的。
3. 其實(shí)在數(shù)據(jù)庫(kù)級(jí)別的【安全性】創(chuàng)建的用戶是屬于全局的,當(dāng)設(shè)置了某個(gè)數(shù)據(jù)庫(kù),比如TestLog之后,這個(gè)用戶就會(huì)出現(xiàn)在這個(gè)數(shù)據(jù)庫(kù)的【安全性】列表中。如果刪除TestLog這個(gè)用戶,會(huì)出現(xiàn)下面的提示。刪除了后,這個(gè)用戶就無(wú)法登陸了。需要去對(duì)應(yīng)的數(shù)據(jù)庫(kù)中刪除用戶,如果沒有刪除又創(chuàng)建,是會(huì)報(bào)錯(cuò)的。
(圖9:刪除TestUser用戶)
4. 在第6步的【顯式權(quán)限】列表中,如果選擇了【Control】這個(gè)選項(xiàng),那么在【Select】中設(shè)置查詢【列權(quán)限】就沒有意義了,查詢就不會(huì)受限制了。如果設(shè)置【列權(quán)限】,在正常情況下會(huì)顯示下圖的報(bào)錯(cuò)信息:
(圖10:效果)
5. 在TestLog數(shù)據(jù)庫(kù)的【安全性】-【TestUser】-【屬性】-【安全對(duì)象】-【添加】-【對(duì)象類型】這里有更多關(guān)于數(shù)據(jù)庫(kù)級(jí)別的一些對(duì)象類型可以設(shè)置。
(圖11:其它對(duì)象類型)
相關(guān)文章
SQL2005CLR函數(shù)擴(kuò)展-解析天氣服務(wù)的實(shí)現(xiàn)
其實(shí)我們可以用CLR獲取網(wǎng)絡(luò)服務(wù),來(lái)顯示到數(shù)據(jù)庫(kù)自定函數(shù)的結(jié)果集中,比如163的天氣預(yù)報(bào)。需要的朋友參考下2013-06-06SQLServer2005 沒有服務(wù)器名稱的兩種解決方法
這篇文章主要介紹了SQLServer2005 沒有服務(wù)器名稱的兩種解決方法,需要的朋友可以參考下2015-01-01sql2005附加數(shù)據(jù)庫(kù)操作步驟(sql2005還原數(shù)據(jù)庫(kù))
本文介紹了sql2005附加數(shù)據(jù)庫(kù)的操作步驟,簡(jiǎn)單幾步就可以完成,大家參考使用吧2014-01-01玩轉(zhuǎn)-SQL2005數(shù)據(jù)庫(kù)行列轉(zhuǎn)換
雖然開發(fā)過(guò)程中沒用過(guò)行列轉(zhuǎn)換,但是聽說(shuō)面試時(shí)常常會(huì)遇到這個(gè)問(wèn)題,以前在網(wǎng)上也看到過(guò)大神的例子,今天自己仔細(xì)的玩了下,希望和大家分享一下了2013-11-11SQL SERVER 2005數(shù)據(jù)庫(kù)還原的方法
這篇文章主要介紹了SQL SERVER 2005數(shù)據(jù)庫(kù)還原的方法,有需要的朋友可以參考一下2013-11-11SQL2005利用ROW_NUMBER() OVER實(shí)現(xiàn)分頁(yè)功能
SQL2005利用ROW_NUMBER() OVER實(shí)現(xiàn)分頁(yè)功能,需要的朋友可以參考下2012-12-12SQLServer2005 批量查詢自定義對(duì)象腳本
使用系統(tǒng)函數(shù)object_definition和系統(tǒng)表 sysobjects 就可以了2009-08-08SQL2005中char nchar varchar nvarchar數(shù)據(jù)類型的區(qū)別和使用環(huán)境講解
有人討論char nchar varchar nvarchar這幾個(gè)數(shù)據(jù)類型的區(qū)別跟實(shí)際使用情況,很多人都搞不清楚究竟哪個(gè)場(chǎng)景使用哪個(gè)數(shù)據(jù)類型,下面用代碼解釋一下2013-11-11sql2005創(chuàng)建遠(yuǎn)程登錄帳戶的sql語(yǔ)句
有時(shí)候我們需要?jiǎng)?chuàng)建遠(yuǎn)程登錄賬號(hào),這里簡(jiǎn)單分享下,方便需要的朋友2013-04-04