SQL Server Agent 子系統
*「子系統」*是一個預先定義的物件,代表 Microsoft SQL Server Agent Proxy 可用的功能集。每個 Proxy 都具有一或多個子系統的存取權。子系統可提供安全性,因為它們會將 Proxy 可用的功能存取加以分隔。每種作業步驟都可在 Proxy 的內容中執行,除了 Transact-SQL 作業步驟以外;Transact-SQL 作業步驟使用 EXECUTE AS 命令來設定安全性內容。
附註: |
---|
從 SQL Server 2000 升級至 SQL Server 2005 後,在升級前存在的所有使用者 Proxy 帳戶都會變更為暫存全域 Proxy 帳戶 UpgradedProxyAccount。UpgradedProxyAccount 只會被授與對明確使用之子系統的存取權限,升級後並不會有所有子系統的存取權限。 |
Microsoft SQL Server 2005 定義了下表所列的子系統:
子系統名稱 | 描述 |
---|---|
Microsoft ActiveX Script |
執行 ActiveX Scripting 作業步驟。 |
作業系統 (CmdExec) |
執行可執行的程式。 |
複寫散發者 |
執行可啟動複寫「散發代理程式」的作業步驟。 |
複寫合併 |
執行可啟動複寫「合併代理程式」的作業步驟。 |
複寫佇列讀取器 |
執行可啟動複寫「佇列讀取器代理程式」的作業步驟。 |
複寫快照 |
執行可啟動複寫「快照代理程式」的作業步驟。 |
複寫交易記錄讀取器 |
執行可啟動複寫「記錄讀取器代理程式」的作業步驟。 |
Analysis Services 命令 |
執行 Analysis Services 命令。 |
Analysis Services 查詢 |
執行 Analysis Services 查詢。 |
SSIS 封裝執行 |
執行 SSIS 封裝。 |
附註: |
---|
由於 Transact-SQL 作業步驟不使用 Proxy,因此沒有 Transact-SQL 作業步驟適用的 SQL Server Agent 子系統。 |
SQL Server Agent 會強制執行子系統限制,即使 Proxy 的安全性主體通常具有可執行作業步驟中工作的權限,亦是如此。例如,屬於系統管理員 (sysadmin) 固定伺服器角色成員之使用者的 Proxy,若沒有 SSIS 子系統的存取權,即無法執行 SSIS 作業步驟,即使使用者可執行 SSIS 封裝亦然。
請參閱
工作
如何:建立 ActiveX Script 作業步驟 (SQL Server Management Studio)
如何:建立 CmdExec 作業步驟 (SQL Server Management Studio)
其他資源
CREATE CREDENTIAL (Transact-SQL)
EXECUTE AS 子句 (Transact-SQL)
複寫代理程式安全性模型
sp_grant_proxy_to_subsystem (Transact-SQL)
sp_revoke_proxy_from_subsystem (Transact-SQL)