SQL Server 資料庫使用者權限設定

來源:互聯網
上載者:User

SQL Server 資料庫使用者權限設定

SQL Server 2005資料庫中,我們可以設定每個使用者對應的許可權,以提高資料庫的安全性。這類使用者權限設定的應用非常廣泛。比如設定某個使用者訪問某個表的許可權,甚至是CRUD的許可權,更小粒度的還可以去到某幾個欄位的存取權限等等。其實這一設定過程是很簡單的,接下來就讓我們來一起學習吧。

一、操作步驟

1. 首先進入資料庫層級的【安全性】-【登入名稱】-【建立登入名稱】

(圖1:建立登入名稱)

2. 在【常規】選項卡中,如所示,建立登陸名,並設定預設的資料庫。

(圖2:設定選項)

3. 在【使用者映射】選項卡中,如所示,勾選需要設定的資料庫,並設定【架構】,點擊【確認】按鈕,完成建立使用者的操作

(圖3:選擇對應資料庫)

4. 現在我們就可以對TestLog資料庫中的User表進行許可權的設定了,【表】-【 屬性】

(圖4:選擇對應表)

5. 在【許可權】選項卡中,如所示,依此點擊【添加】-【瀏覽】-【選擇對象】

(圖5:設定訪問表的使用者)

6. 在上面點擊【確認】後,我們就可以下面的列表中找到對應的許可權,如果你還想細化到列的許可權的話,右下角還有一個【列許可權】的按鈕可以進行設定,點擊【確認】按鈕就完成了這些許可權的設定了

(圖6:許可權列表)

7. 現在就使用TestUser使用者登陸資料庫了,登陸後如所示,現在只能看到一個表了

(圖7:效果)

二、注意事項

1. 在上面的第3步驟中需要注意:如果這裡沒有選擇對應的資料庫的話,之後去TestLog資料庫中是找不到TestUser。

(圖8:找不到TestUser使用者)

2. 在上面的第3步驟,設定完TestLog資料後,需要點擊【確認】按鈕,完成建立使用者操作,如果這個時候去設定【安全性實體】,是無法在【添加】-【特定對象】-【物件類型】-【登陸名】-【瀏覽】中找到剛剛建立的TestUser使用者的。

3. 其實在資料庫層級的【安全性】建立的使用者是屬於全域的,當設定了某個資料庫,比如TestLog之後,這個使用者就會出現在這個資料庫的【安全性】列表中。 如果刪除TestLog這個使用者,會出現下面的提示。刪除了後,這個使用者就無法登陸了。需要去對應的資料庫中刪除使用者,如果沒有刪除又建立,是會報錯的。

(圖9:刪除TestUser使用者)

4. 在第6步的【明確權限】列表中,如果選擇了【Control】這個選項,那麼在【Select】中設定查詢【列許可權】就沒有意義了,查詢就不會受限制了。如果設定【列許可權】,在正常情況下會顯示的報錯資訊:

(圖10:效果)

5. 在TestLog資料庫的【安全性】-【TestUser】-【屬性】-【安全性實體】-【添加】-【物件類型】這裡有

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.