需求
在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'
結果
當我們查詢指定視圖時,可以查詢資料,但是查詢視圖外無法查詢,并且提示相關權限資訊。