我需要檢查某個在SQL Server 2008上運行的作業,但登錄到該服務器時使用的用戶不能擁有sysadmin權限。用戶訪問SQL Server代理 - 作業活動監視器
所以我的問題是我可以有一個用戶可以訪問SQL Server代理 - 作業活動監視器,但該用戶不在sysadmin組?
我需要檢查某個在SQL Server 2008上運行的作業,但登錄到該服務器時使用的用戶不能擁有sysadmin權限。用戶訪問SQL Server代理 - 作業活動監視器
所以我的問題是我可以有一個用戶可以訪問SQL Server代理 - 作業活動監視器,但該用戶不在sysadmin組?
將用戶添加到msdb
,並將它們置於SQLAgentOperatorRole
固定數據庫角色中。有關更多信息,請參閱聯機叢書主題How to: Configure a User to Create and Manage SQL Server Agent Jobs。
在T-SQL,這將是:
USE msdb;
GO
CREATE USER UserName FROM LOGIN [UserName];
GO
EXEC sp_addrolemember N'SQLAgentOperatorRole', N'UserName';
GO
在SQL Server 2012中是sp_addrolemember
不宜使用;相反:
ALTER ROLE [SQLAgentOperatorRole] ADD MEMBER [UserName];
謝謝Aaron,它像一個魅力:) – BogdanM 2013-03-27 09:03:14
您使用的是SQL Server 2008還是SQL Server 2008 R2?這個問題並不重要,但要明確和一致是很重要的。 – 2013-03-26 15:50:41