新建資料庫使用者需具備建立/調度 SQL Server Agent 作業的權限。遵循最小權限原則,僅在 msdb 資料庫授予必要的固定資料庫角色,避免給予過高的 sysadmin 伺服器角色。
db_owner (dbo) —— 擁有 msdb 完全控制權,可管理作業、類別、警示等所有物件。SQLAgentUserRole —— 最基礎角色,僅能建立/執行/修改/刪除自己擁有的作業與排程。SQLAgentReaderRole —— 可檢視所有作業屬性、歷史記錄、排程,但不可修改。SQLAgentOperatorRole —— 具備 Reader 權限,另可啟動/停止任何作業、管理作業步驟與排程。說明:四個角色權限遞增。實務上視業務需求勾選:僅需建立自有作業 → SQLAgentUserRole;需監控全伺服器作業 → 加 SQLAgentReaderRole;需協助操作他人作業 → 加 SQLAgentOperatorRole;需完整管理 msdb 物件 → 加 db_owner。
USE msdb;
GO
ALTER ROLE db_owner ADD MEMBER [YourLogin];
ALTER ROLE SQLAgentUserRole ADD MEMBER [YourLogin];
ALTER ROLE SQLAgentReaderRole ADD MEMBER [YourLogin];
ALTER ROLE SQLAgentOperatorRole ADD MEMBER [YourLogin];
GO
登入該帳號,於 SSMS 物件總管展開 SQL Server Agent → 作業,嘗試右鍵 新增作業、設定步驟與排程,確認權限生效。