賦予作業擁有權給其他人
此主題描述如何將 Microsoft SQL Server Agent 作業的擁有權重新指派給其他使用者。
**開始之前:**限制事項、安全性
若要使用下列項目賦予作業擁有權給其他人:
SQL Server Management Studio
Transact-SQL
SQL Server 管理物件
開始之前
限制事項
若要建立作業,使用者必須是 SQL Server Agent 固定資料庫角色或系統管理員 (sysadmin) 固定伺服器角色的成員。 只有作業擁有者或隸屬 sysadmin 角色的成員可以編輯作業。 如需有關 SQL Server Agent 固定資料庫角色的詳細資訊,請參閱<SQL Server Agent 固定資料庫角色>。
您必須是系統管理員,才能夠變更作業的擁有者。
將作業指派給另一個登入並不保證新的擁有者具有充分之使用權限能夠成功執行作業。
安全性
基於安全考量,只有作業擁有者或隸屬 sysadmin 角色的成員可以變更作業的定義。 只有 sysadmin (系統管理員) 固定伺服器角色的成員可以將作業擁有權指定給其他使用者,而且無論作業擁有者是誰,都可以執行任何作業。
[!附註]
如果將作業擁有權變更給非系統管理員 (sysadmin) 固定伺服器角色成員的使用者,而且作業正在執行要求 Proxy 帳戶的作業步驟 (例如,SSIS 封裝執行),請確定使用者擁有該 Proxy 帳戶的存取權,否則作業將會失敗。
權限
如需詳細資訊,請參閱<實作 SQL Server Agent 安全性>。
[回到頁首]
使用 SQL Server Management Studio
若要賦予作業擁有權給其他人
在 [物件總管] 中,連接到 SQL Server Database Engine 的執行個體,然後展開該執行個體。
展開 [SQL Server Agent],展開 [作業],以滑鼠右鍵按一下作業,然後按一下 [屬性]。
在 [擁有者] 清單選取登入。 您必須是系統管理員,才能夠變更作業的擁有者。
將作業指派給另一個登入並不保證新的擁有者具有充分之使用權限能夠成功執行作業。
[回到頁首]
使用 Transact-SQL
若要賦予作業擁有權給其他人
在 [物件總管] 中,連接到 Database Engine 的執行個體,然後展開該執行個體。
在工具列上,按一下 [新增查詢]。
在查詢視窗中,輸入下列使用 sp_manage_jobs_by_login (Transact-SQL) 系統預存程序的陳述式。 下列範例會將 danw 的所有作業重新指派給 françoisa。
USE msdb ; GO EXEC dbo.sp_manage_jobs_by_login @action = N'REASSIGN', @current_owner_login_name = N'danw', @new_owner_login_name = N'françoisa' ; GO
[回到頁首]
使用 SQL Server 管理物件
若要賦予作業擁有權給其他人
- 使用所選的程式語言 (例如 Visual Basic、Visual C# 或 PowerShell) 呼叫 Job 類別。 如需詳細資訊,請參閱<SQL Server Management Objects (SMO)>。 如需範例程式碼,請參閱<使用 SQL Server Agent 排程自動管理工作>。
[回到頁首]