Sql-Server

執行 SSIS 作業時驗證代理帳戶時出錯

  • November 13, 2019

我有一個 SQL Server 實例,每晚執行 5 個計劃任務,每個任務都執行 SSIS 包。

這些包已執行多年,相關步驟通過代理帳戶 (PackageExecutor) 執行。PackageExecuter 與以前的域管理員帳戶的 SQL 憑據相關聯。

很快,與此管理員帳戶關聯的域將被關閉。我必須在新域上使用一個新帳戶作為與我的 roxy PackageExecutor 關聯的管理員帳戶。當我為新管理員帳戶創建新憑據並將其與 PackageExecutor 關聯時,當我嘗試執行我的 SQL 作業之一作為測試時,我開始收到以下錯誤:

Unable to start execution of step 1 (reason: Error authenticating
proxy *Domain\Admin_Account*@*fully.qualified.domain.com*, system
error: Logon failure: unknown user name or bad password.).  The step
failed.

如果我理解這個合理明確的錯誤,它告訴我的是與我的代理關聯的憑據帳戶是正確的。我如何驗證這一點?

我知道這個帳戶是合法的——我已經將它與每個關聯的伺服器組相關聯,我已經將它設置為伺服器上的系統管理員使用者。

什麼可能導致這個問題?

需要明確的是,我沒有輸入與代理憑據關聯的帳戶名或密碼。但是,當我輸入帳戶名稱Domain\Admin_Account並點擊“檢查名稱”按鈕時,SQL Server 會自動將使用者 ID 轉換為完全限定版本。我不確定這是否與這個問題有關。

我有點不知所措。我已授予我的憑據帳戶對我能想到的所有內容的完全訪問權限。我可能需要做些什麼才能使其正常工作?

更新

抱歉,再提一提。我找到了這篇 MSDN kb 文章。解決方法#1是我多年來一直在做的事情。其他人似乎不適用,或者我錯過了一些東西。任何提示或澄清都是有益的。

以防其他人出於同樣的原因來到這裡。確保您的代理/憑據使用的帳戶是 SQL 安全性中其預設數據庫中的使用者。

我們檢查了所有其他建議(檢查密碼是否未更改、切換到 SQL 代理使用者的本地服務帳戶、重建憑據和代理等),直到我們確保該帳戶是預設使用者DB,由於某種原因,導致它在嘗試向 AD 進行身份驗證時傳遞 Null SID。

首先嘗試重新啟動 Sql Server 代理。我遇到了類似的問題,甚至重新創建了代理和憑據,但它仍然無法正常工作。我們昨天發生了崩潰轉儲,顯然斷開了連接並且無法辨識憑據。重新啟動代理,瞧,它又工作了。

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