設定報表伺服器資料庫連接 (報表伺服器組態管理員)

適用於:✅SQL Server 2016 (13.x) Reporting Services 和更新版本✅ Power BI 報表伺服器

如需舊版 SQL Server Reporting Services (SSRS) 的相關內容,請參閱 SQL Server 2014 Reporting Services

每個報表伺服器執行個體都需要連線至儲存伺服器所管理之報表、共用資料來源、資源和中繼資料的報表伺服器資料庫。 如果您要安裝預設組態,您可以在報表伺服器安裝期間建立初始連接。 在大部分的情況下,您可利用 Reporting Services 組態工具,在安裝程式完成之後設定連線。 您可以隨時修改連接,以變更帳戶類型或重設認證。 如需如何建立資料庫及設定連線的逐步指示,請參閱建立原生模式報表伺服器資料庫 (報表伺服器組態管理員)

您必須在下列情況下設定報表伺服器資料庫連接:

  • 設定報表伺服器以供第一次使用。

  • 設定報表伺服器來使用其他的報表伺服器資料庫。

  • 變更用於資料庫連接的使用者帳戶或密碼。 帳戶資訊若是儲存在 RSReportServer.config 檔案中,您只需要更新資料庫連接。 如果您是使用服務帳戶進行連線 (這會使用 Windows 整合式安全性做為認證類型),則不會儲存密碼。 這項功能無需更新連線資訊。 如需變更帳戶的詳細資訊,請參閱設定報表伺服器服務帳戶 (報表伺服器組態管理員)

  • 設定報表伺服器向外延展部署。 若要設定向外延展部署,您必須建立到報表伺服器資料庫的多個連接。 如需如何執行此多步驟作業的詳細資訊,請參閱設定原生模式報表伺服器向外延展部署 (報表伺服器組態管理員)

Reporting Services 如何連線到資料庫引擎

報表伺服器對報表伺服器資料庫的存取取決於認證和連線資訊。 它也取決於對使用該資料庫的報表伺服器執行個體有效的加密金鑰。 必須要有有效的加密金鑰,才能儲存和擷取機密資料。 當您第一次設定資料庫時,會自動建立加密金鑰。 建立金鑰之後,如果您變更報表伺服器服務識別,則必須更新金鑰。 如需使用加密金鑰的詳細資訊,請參閱設定和管理加密金鑰 (報表伺服器組態管理員)

報表伺服器資料庫為內部元件,只能由報表伺服器存取。 您為報表伺服器資料庫指定的認證和連接資訊是報表伺服器所專用。 要求報表的使用者不需要資料庫權限或是報表伺服器資料庫的資料庫登入。

Reporting Services 會使用 System.Data.SqlClient 連線到裝載報表伺服器資料庫的資料庫引擎。 如果您要使用資料庫引擎的本機執行個體,報表伺服器會使用共用記憶體建立連線。 如果您要使用報表伺服器資料庫的遠端資料庫伺服器,您可能必須根據您使用的版本來啟用遠端連接。 如果您正在使用 Enterprise Edition,預設會啟用 TCP/IP 的遠端連線。

若要確認執行個體可接受遠端連線,請依序選取 [開始]、[所有程式]、[Microsoft SQL Server] 與 [組態工具],再選取 [SQL Server 組態管理員],然後確認每一個服務都已啟用 TCP/IP 通訊協定。

當您啟用遠端連接時,也會啟用用戶端和伺服器通訊協定。 若要確認通訊協定已啟用,請依序選取 [開始]、[所有程式]、[Microsoft SQL Server]、[組態工具]、[SQL Server 組態管理員]、[SQL Server 網路組態],再選取 [MSSQLSERVER 的通訊協定]。 如需詳細資訊,請參閱 SQL Server 中的啟用或停用伺服器網路通訊協定

定義報表伺服器資料庫連接

若要設定連線,您必須使用 Reporting Services 組態管理員或 rsconfig 命令列公用程式。 報表伺服器需要下列連接資訊:

  • 裝載報表伺服器資料庫之資料庫引擎執行個體的名稱。

  • 報表伺服器資料庫的名稱。 第一次建立連接時,您可以建立新的報表伺服器資料庫或選取現有的資料庫。 如需詳細資訊,請參閱建立報表伺服器資料庫 (報表伺服器組態管理員)

  • 認證類型。 您可以使用服務帳戶、Windows 網域帳戶或 SQL Server 資料庫登入。

  • 使用者名稱和密碼 (只有使用 Windows 網域帳戶或 SQL Server 登入時才需要)。

您提供的認證必須被授與對報表伺服器資料庫的存取權。 如果您使用 Reporting Services 組態工具,會自動執行此步驟。 如需有關存取資料庫所需權限的詳細資訊,請參閱本文中的<資料庫權限>一節。

儲存資料庫連接資訊

Reporting Services 會儲存及加密下列 RSreportserver.config 設定中的連線資訊。 您必須使用 Reporting Services 組態工具或 rsconfig 公用程式來建立這些設定的加密值。

不過,並不是每種連接類型都需要設定所有的值, 如果您利用預設值設定連線 (也就是使用服務帳戶來進行連線),則 <LogonUser>、<LogonDomain> 與 <LogonCred> 會是空的,如下所示:

<Dsn></Dsn>  
<ConnectionType></ConnectionType>  
<LogonUser></LogonUser>  
<LogonDomain></LogonDomain>  
<LogonCred></LogonCred>  

當您設定連接來使用特定的 Windows 帳戶或資料庫登入時,如果您隨後又變更該帳戶或登入,請務必記得更新所儲存的值。

選擇認證類型

在報表伺服器資料庫的連接中,您可以使用三種認證類型:

  • 使用報表伺服器服務帳戶的 Windows 整合式安全性。 由於報表伺服器會實作為單一服務,所以只有用來執行此服務的帳戶才需要資料庫存取權。

  • Windows 使用者帳戶。 如果報表伺服器和報表伺服器資料庫安裝在相同電腦上,您可以使用本機帳戶。 否則,您必須使用網域帳戶。

  • SQL Server 登入。

注意

自訂驗證延伸模組不能用來連接到報表伺服器資料庫。 自訂驗證延伸模組只能用於驗證報表伺服器的主體。 它們對於報表伺服器資料庫的連接,或者提供報表內容之外部資料來源的連接,不會有任何影響。

如果資料庫引擎執行個體設定為 Windows 驗證,而且與報表伺服器電腦位於相同的網域或受信任的網域中,您可以設定此連線使用透過 Reporting Services 組態工具來當做連線屬性管理的服務帳戶或網域使用者帳戶。 如果資料庫伺服器位於不同的網域,或者您使用的是工作群組安全性,您就必須設定連線以使用 SQL Server 資料庫登入。 在此情況下,請務必為此連接加密。

注意

使用 Azure SQL 受控執行個體來裝載報表伺服器資料庫時,SQL Server 驗證是唯一支援的認證類型。 此外,請注意,受控執行個體無法裝載報表伺服器執行個體。

使用服務帳戶和整合式安全性

您可以使用 Windows 整合式安全性,以透過報表伺服器服務帳戶進行連接。 此帳戶會被授與報表伺服器資料庫的登入權限。 如果您以預設的組態安裝 Reporting Services,這是安裝程式選擇的預設認證類型。

此服務帳戶是信任帳戶,可提供管理報表伺服器資料庫連接的低維護方法。 由於此服務帳戶會使用 Windows 整合式安全性進行連接,因此不需要儲存認證。 但是,如果您隨後變更服務帳戶密碼或身分識別 (例如,從內建帳戶切換到網域帳戶),請務必使用 Reporting Services 組態工具進行變更。 此工具會自動更新資料庫權限,以使用修訂過的帳戶資訊。 如需詳細資訊,請參閱設定報表伺服器服務帳戶 (報表伺服器組態管理員)

如果將資料庫連接設定為使用此服務帳戶,則當報表伺服器資料庫位於遠端電腦上時,該帳戶必須具有網路權限。 如果報表伺服器資料庫位於不同的網域、在防火牆後面,或者您使用的是工作群組安全性而非網域安全性,則請勿使用服務帳戶。 改為使用 SQL Server 資料庫使用者帳戶。

使用網域使用者帳戶

您可以針對與報表伺服器資料庫的報表伺服器連接指定 Windows 使用者帳戶。 如果您使用本機或網域帳戶,則每當您變更密碼或帳戶時,您必須更新報表伺服器資料庫連接。 一律使用 Reporting Services 組態工具來更新連線。

使用 SQL Server 登入

您可以指定單一 SQL Server 登入,以連線到報表伺服器資料庫。 如果使用 SQL Server 驗證,而報表伺服器資料庫位於遠端電腦上,請利用 IPSec 來保護伺服器之間資料傳輸的安全。 如果您使用資料庫登入,則每當您變更密碼或帳戶時,您必須更新報表伺服器資料庫連接。

資料庫權限

用來連接到報表伺服器資料庫的帳戶被授與下列角色:

  • ReportServer 資料庫的 publicRSExecRole 角色。

  • mastermsdbReportServerTempDB資料庫的 RSExecRole 角色。

當您使用 Reporting Services 組態工具建立或修改此連線時,會自動授與這些權限。 如果您使用 rsconfig 公用程式,並且為連線指定不同的帳戶,則必須針對該新帳戶更新 SQL Server 登入。 您可以在 Reporting Services 組態工具中,建立會更新報表伺服器之 SQL Server 登入的指令碼檔案。

驗證資料庫名稱

使用 Reporting Services 組態工具,以判斷特定報表伺服器執行個體使用了哪一個報表伺服器資料庫。 若要尋找名稱,請連接到報表伺服器執行個體,然後開啟 [資料庫安裝] 頁面。

使用不同的報表伺服器資料庫,或移動報表伺服器資料庫

您可以變更連接資訊,來設定報表伺服器執行個體使用不同的報表伺服器資料庫。 通常,需要切換資料庫的狀況會發生在部署實際報表伺服器的時候。 通常,實際伺服器首展的時候,就會從測試報表伺服器資料庫切換到實際報表伺服器資料庫。您也可以將報表伺服器資料庫移到另一部電腦。 如需詳細資訊,請參閱 SQL Server 中的升級及移轉 Reporting Services

設定多個報表伺服器,使用同一個報表伺服器資料庫

您可以設定多個報表伺服器,使用同一個報表伺服器資料庫。 這個部署組態稱為向外延展部署。 如果您想要在伺服器叢集中執行多部報表伺服器,此組態為必要條件。 不過,如果想要分割服務應用程式,也可以使用此組態。 您可以使用它來測試新報表伺服器執行個體的安裝和設定,將其與現有報表伺服器安裝進行比較。 如需詳細資訊,請參閱設定原生模式報表伺服器向外延展部署 (報表伺服器組態管理員)

更多問題嗎? 嘗試詢問 Reporting Services 論壇