Sql-Server-Agent

查看但不能創建 SQL 代理作業的角色或權限

  • December 8, 2017

Microsoft SQL Server 數據庫角色 SQLAgentReaderRole 顯然允許成員創建 SQL 代理作業以及查看作業、作業步驟和結果。

我們需要允許使用者查看所有 SQL 代理作業、步驟、計劃和結果,但不能創建任何作業。這幾乎可以使用幾種不同的視圖來提供,但結果很混亂且難以閱讀——我希望能夠在 Management Studio 中看到 SQL 代理節點並進行驗證。

是否有任何角色或權限允許這樣做?讓我們假設 SQL 2008 到 SQL 2016。謝謝。

似乎這應該工作

“讀者”這個名字絕對是誤導。這可能是顯而易見的,但為了解決這個問題,我已授予 SQLAgentReaderRole 角色,並明確拒絕在 msdb 中為使用該角色的登錄添加作業 sprocs 時執行 EXECUTE。

DENY EXECUTE ON [dbo].[sp_add_job] TO [YourLogin] GO 
DENY EXECUTE ON [dbo].[sp_add_jobschedule] TO [YourLogin] GO 
DENY EXECUTE ON [dbo].[sp_add_jobserver] TO [YourLogin] GO 
DENY EXECUTE ON [dbo].[sp_add_jobstep] TO [YourLogin] GO 
DENY EXECUTE ON [dbo].[sp_add_jobstep_internal] TO [YourLogin] GO

引用自:https://dba.stackexchange.com/questions/192737