天天看點

SQL Server建立使用者隻能通路指定視圖

需求

在SQL Server中添加一個使用者隻賦予能通路某個視圖的權限。

實作

-- 選擇要操作的資料庫,添加一個角色`newRole`
exec sp_addrole newRole

-- 給`newRole`添加通路指定視圖的權限
grant select on dbo.testView to newRole

-- 添加一個登陸,登入名:newLogin;密碼:123456;預設資料庫:dbo.test;
exec sp_addlogin 'newLogin','123456','dbo.test'

-- 添加一個使用者,使用`newLogin`登陸,指定`newRole`角色
exec sp_adduser 'newLogin','newUser','newRole'
           

結果

當我們查詢指定視圖時,可以查詢資料,但是查詢視圖外無法查詢,并且提示相關權限資訊。

SQL Server建立使用者隻能通路指定視圖