目錄
一、需求場景:
在和其他廠商對接的時候,經常會將某數據庫的某些表放開增刪改查(CRUD)的權限給對方,此時,就要新建個用戶,授予某數據庫的某些表CRUD的權限;還有的時候只需授權SELECT權限,其他權限不能授予;
二、操作步驟:
演示所用數據庫版本:SQL Server Management Studio V17.8.1
1、登錄SSMS后選擇【安全性】,右鍵點擊【登錄名】,在彈出的右鍵菜單中選擇【新建登錄名】選項;
2、在【常規】選項卡中,創建登錄名,並設置默認數據庫;
3、在【用戶映射】選顯卡中,勾選數據庫,並設置【架構】;
4、對需要設置操作權限的表進行權限設置,【表】--【屬性】;
數據庫TestDB中已經有兩個表,分別為User和Salary,現在對表User進行權限設置,將Insert、update、delete、select的權限賦給用戶【zyl】;
1)、表上右鍵選擇【屬性】,選擇【權限】選項卡:
2)、點擊【搜索】,在彈出的框中點擊【瀏覽】,選擇需要設置的用戶;
3)、在上面點擊【確定】后,就可以在【權限】選項卡中看到權限列表,選擇需要的權限點擊確定即可;
4)、當選中【選擇】和【引用】權限時,還可以設置【列權限】;
5、使用【zyl】登錄數據庫,就只能看到User表了;
並且用戶【zyl】只能對表User進行增刪改查,不能修改表結構;
三、注意事項
1、在權限列表中如果選擇了【設置】這項,那么再設置【列權限】就沒有意義了,因為查詢已經不受限制了;
如果設置了【列權限】,沒有選擇【設置】權限,那么select * 就會報錯;
2、除了對表設置權限外,還可以對視圖、函數等進行權限設置;
在數據庫的【安全性】-【用戶】-【zyl】-【屬性】-【安全對象】;