Reporting Services 提供一個特殊帳戶,用於無人值守報表處理以及跨網路傳送連線要求。 帳戶會以下列方式使用:
針對使用資料庫驗證的報表,透過網路傳送連線要求,或連線到不需要或使用驗證的外部報表數據源。 如需詳細資訊,請參閱《SQL Server 在線叢書》中的 指定報表數據源的認證和連接資訊 。
擷取報表中使用的外部圖像檔。 如果您想要使用圖像檔案,而檔案無法透過匿名存取方式存取,您可以設定報表處理的自動帳戶,並授予該帳戶存取檔案的權限。
自動報表處理是指由事件觸發的任何報表執行程式(排程驅動事件或數據重新整理事件),而不是使用者要求。 報表伺服器會使用非互動報表處理帳戶登入承載外部數據來源的電腦。 此帳戶是必要的,因為報表伺服器服務帳戶的認證永遠不會用來連線到其他計算機。
這很重要
設定帳戶是選擇性的。 不過,如果您未進行設定,將會限制連線到某些數據源的選項,而且可能無法從遠端計算機擷取圖像檔。 如果您設定帳戶,則必須保持最新狀態。 具體來說,如果您允許密碼過期,或 Active Directory 中的帳戶資訊變更,下次處理報表時,您會遇到下列錯誤:「登入失敗(rsLogonFailed) 登入失敗:未知的使用者名稱或密碼錯誤。」自動報表處理帳戶的適當維護很重要,即使您從未擷取外部映像或傳送連線要求給外部電腦也一樣。 如果您設定帳戶,但發現您未使用它,則可以將其刪除,以避免例行帳戶維護工作。
如何設定帳戶
您必須使用網域用戶帳戶。 為了達到其預期目的,此帳戶應該與用來執行報表伺服器服務的帳戶不同。 請務必使用具有最低許可權的帳戶(具有網路連線許可權的唯讀存取權已足夠),而且只能存取那些提供數據源和資源給報表伺服器的計算機。 如需詳細資訊,請參閱 Reporting Services 組態管理員(原生模式)。
若要指定帳戶,您可以使用 Reporting Services 組態工具或 rsconfig 公用程式。 設定自動執行帳戶最簡單的方法是執行 Reporting Services 組態工具,並在 [執行帳戶] 頁面中指定認證。
啟動 Reporting Services 組態工具,並連線到您想要設定的報表伺服器實例。 如需指示,請參閱 Reporting Services 組態管理員(原生模式)。
在 [執行帳戶] 頁面上,選取 [ 指定執行帳戶]。
輸入帳戶和密碼、重新輸入密碼,然後按兩下 [ 套用]。
使用 RSCONFIG 公用程式
設定帳戶的另一種方式是使用 rsconfig 公用程式。 若要指定帳戶,請使用 rsconfig 的 -e 自變數。 指定 rsconfig 的 -e 自變數會指示公用程式將帳戶資訊寫入組態檔。 您不需要為RSreportserver.config指定路徑。請遵循下列步驟來設定帳戶。
建立或選取可存取提供數據或服務給報表伺服器之計算機和伺服器的網域帳戶。 您應該使用具有縮減許可權的帳戶(例如唯讀許可權)。
開啟命令提示字元:在 [ 開始 ] 功能表上,單擊 [ 執行],輸入 cmd,然後按兩下 [ 確定]。
輸入下列命令,在本機報表伺服器實例上設定帳戶:
rsconfig -e -u<domain/username> -p<password>
rsconfig -e 支援其他自變數。 如需語法和檢視命令範例的詳細資訊,請參閱《SQL Server 在線叢書》中的 rsconfig 公用程式 (SSRS)。
帳戶資訊儲存方式
當您設定帳戶時,下列設定會指定為本機或遠端報表伺服器實例上 RSreportserver.config 檔案中的加密值:
<UnattendedExecutionAccount>
<UserName></UserName>
<Password></Password>
<Domain></Domain>
</UnattendedExecutionAccount>
設定值之後,就無法解密它們以純文本檢視值。 如果您輸入錯誤的值或忘記您指定的值中的任何一項,則必須使用 Reporting Services 組態工具或執行 rsconfig -e 以重新開始。
如何使用自動化報表處理帳戶
若要擷取圖像檔案,報表伺服器會自動使用帳戶,而且您不需要採取任何特定動作。 若要使用帳戶連接到提供資料給報表的外部數據源,您必須在報表數據來源或共用數據來源的 [數據源屬性] 頁面中指定 [認證類型 ] 選項:
- 在報表管理員或 SharePoint 網站上,選取 [不需要認證] 選項。
無人值守報告處理帳戶主要用於連接到外部伺服器,而不是用於資料庫伺服器的登入。 如果您想要使用帳戶認證來登入資料庫,您必須在連接字串中指定認證。 如果資料庫伺服器支援 Windows 整合式安全性,且用於自動報表處理的帳戶有權讀取資料庫,您可以指定 Integrated Security=SSPI 。 否則,您必須在連接字串中輸入使用者名稱和密碼,其中它以純文本顯示給任何有權編輯數據源連接屬性的使用者。
雖然您可以在連接建立後使用自動報表處理帳戶來擷取數據,但不建議這麼做。 帳戶應該用於非常特定的功能。 如果您使用它來擷取數據,則會破壞其用途。
如何維護無人值守報告處理帳戶
定義帳戶之後,您必須確定帳戶和密碼保持在最新狀態。 您可以使用 Reporting Services 組態工具來更新儲存此帳戶相關信息的組態設定。
啟動 Reporting Services 組態工具,並連線到您想要設定的報表伺服器實例。
在 [執行帳戶] 頁面上,確認已選取 [ 指定執行帳戶 ]。
輸入新的帳戶或密碼、重新輸入密碼,然後按兩下 [ 套用]。
如何刪除無人值守報表處理帳戶
如果您未使用帳戶,則可以將其刪除,以避免進行例行帳戶維護工作。
啟動 Reporting Services 組態工具,並連線到您想要設定的報表伺服器實例。
在 [執行帳戶] 頁面上,清除 [指定執行帳戶]。
按一下 套用。
帳戶資訊會從 RSReportServer.config 檔案中移除。