Share via


設定報表伺服器以供網際網路存取

更新: 2006 年 4 月 14 日

雖然 SQL Server Reporting Services 並不是明確針對網際網路報表部署狀況設計的,您仍可以將 Reporting Services 成功地放置在連接網際網路的 Web 伺服器上,以對外散播一般資訊,或散播私密的公司資料給已授權和驗證的使用者。您可以根據應用程式和使用者需求,來選擇下列任一方式:

  • 您建立及部署之自訂網際網路應用程式中 ReportViewer Web 伺服器控制項所主控的內嵌報表。
  • 在外部網路上利用 Windows 驗證進行的報表伺服器部署。
  • 在外部網路上利用自訂驗證進行的報表伺服器部署。
  • 在 SharePoint 產品或技術大型部署中,設定為以後端伺服器形式執行的報表伺服器 (您會在該部署中針對網際網路部署設定前端伺服器)。
ms159272.note(zh-tw,SQL.90).gif附註:
雖然報表管理員不是設計為網際網路應用程式,您仍可以在供網際網路存取的 Web 伺服器上僅安裝報表管理員,然後在防火牆後方安裝報表伺服器和報表伺服器資料庫。若要在供網際網路存取的 Web 伺服器上安裝報表管理員,您必須同時選取報表伺服器和報表管理員做為功能元件。完成安裝之後,您可以利用 SQL Server 介面區組態工具來停用隨同報表管理員一起安裝的報表伺服器執行個體。接著,您可以設定報表管理員來使用防火牆後面的第二個報表伺服器執行個體。您必須修改 RSWebApplication.config 檔中的 <ReportServerVirtualDirectory> 和 <ReportServerUrl> 設定,將報表管理員指向報表伺服器執行個體。

利用 ReportViewer Web 伺服器控制項主控網際網路應用程式中的報表

若要在網際網路應用程式中部署報表,您可以將 ReportViewer Web 伺服器控制項內嵌在您建立及部署之供網際網路存取的自訂應用程式中。ReportViewer Web 伺服器控制項包含在 Visual Studio 2005 中,並可隨同您的應用程式自由散發。您可以設定此控制項,以顯示在報表伺服器上執行的報表。應用程式與報表伺服器之間的連接,是由控制項透過 Web 服務程式設計介面來處理。所有的驗證和授權都是由應用程式處理,透過單一、使用者信任的連接來連接到報表伺服器。

ms159272.note(zh-tw,SQL.90).gif附註:
您可以在 Reporting Services 之外,單獨使用 ReportViewer 控制項來主控您在應用程式中提供的用戶端報表定義 (.rdlc) 檔案。如需詳細資訊,請參閱《SQL Server 線上叢書》中的<Visual Studio 中的 Reporting Services 和 ReportViewer 控制項>。

在外部網路中部署報表伺服器和報表管理員

若要在支援從預先定義之 Microsoft Active Directory 帳戶進行連接的外部網路狀況中部署報表伺服器,您可以使用預設的 Windows 驗證安全性延伸模組。請在 Internet Information Services (IIS) 中針對伺服器設定安全通訊端層 (SSL) 連接和基本驗證。

若要在支援單一登入技術,或以表單為基礎的驗證模型 (在資料庫中儲存使用者識別資訊) 的外部網路狀況中,部署報表伺服器,您必須建立自訂驗證延伸模組,以取代預設的 Windows 驗證安全性延伸模組。通常在您向公眾開放報表伺服器,但是只希望通過驗證的使用者才能檢視內容時,會使用以表單為基礎的驗證。依預設,SQL Server Reporting Services 並不提供以表單為基礎的驗證模組。如需有關如何建立模組的詳細資訊,請參閱《SQL Server 線上叢書》中的<Implementing a Security Extension>。

ms159272.Caution(zh-tw,SQL.90).gif注意:
我們並不建議或鼓勵設定匿名存取的報表伺服器,除非您也要使用自訂驗證。如果不使用自訂驗證,而仍然在報表伺服器上啟用匿名存取,將無法以有效的方式變更角色指派。所有使用者都會在匿名使用者帳戶下存取報表伺服器,而且沒有任何人有權限透過報表管理員或 Management Studio 來管理報表伺服器。您後續定義的角色指派並不會針對個別使用者而改變;所有使用者對相同內容具有同樣的存取權,而需要有使用者相依資料的報表將無法運作。

使用下列指導方針,即可在同一部電腦上部署報表伺服器和報表管理員:

  1. 使用僅限檔案安裝模式,在供網際網路存取的 Web 伺服器上,安裝 Reporting Services。在 SQL Server 安裝精靈中,這是 [安裝但不設定] 選項。
  2. 保護 Web 伺服器和您打算用來主控報表伺服器資料庫之 SQL Server Database Engine 執行個體之間的連接。您可以使用 IPSec 來保護連接。
  3. 安裝完成後,執行 Reporting Services 組態工具以設定報表伺服器:
    1. 指定服務帳戶並建立報表伺服器資料庫。
    2. 如果 SQL Server 執行個體是在其他的網域,而且未啟用 Kerberos 5.0,則針對報表伺服器資料庫連接,請使用 SQL Server 驗證。
  4. 設定報表伺服器和報表管理員虛擬目錄,選擇您已針對網際網路存取設定的網站。
ms159272.note(zh-tw,SQL.90).gif附註:
在舊版本中,在供網際網路存取的 Web 伺服器上部署報表伺服器執行個體時,您必須修改組態設定。只要一起安裝報表管理員和報表伺服器,就不再需要此步驟。

設定 Web.config 檔案中的 Proxy 設定

在 SQL Server 2005 中,Reporting Services 包含一個 Web.config 設定,在傳送要求到相同電腦上安裝的本機報表伺服器時,允許報表管理員略過 Proxy 伺服器。

此 Web.config 設定為 System.NET defaultProxy 網路設定。依預設,在報表管理員的 Web.config 檔案中,defaultProxy 是停用的。當報表管理員和報表伺服器部署在相同電腦上時,建議採用此組態。

如果您是從 SQL Server 2000 Reporting Services 升級,報表管理員 Web.config 檔案就不會包含 defaultProxy 組態設定。您可以在同時執行報表管理員和報表伺服器的電腦上,加入和設定 defaultProxy 設定,以於安裝時略過 Proxy 伺服器。請將下列的組態設定複製到報表管理員 Web.config 檔案中:

<configuration>
...
<system.net>
  <defaultProxy enabled="false" />
</system.net>
</configuration>

如需有關這些設定的詳細資訊,請參閱《Microsoft .NET Framework 開發人員指南》中的「設定網際網路應用程式」和「defaultProxy 元素 (網路設定)」。

確認網際網路部署

若要確認您的報表伺服器連接能夠存取,您應該輸入 http: (或 https:)//<your-web-server-fully-qualified-domain-name>/reportserver (其中 /reportserver 是報表伺服器虛擬目錄的預設名稱),就能透過網際網路連接檢視報表伺服器資料夾命名空間。

ms159272.note(zh-tw,SQL.90).gif附註:
在連接網際網路的 Web 伺服器上部署 Reporting Services 時,必須在您的部分進行謹慎的評估。網路和安全性軟體、網路拓撲以及網域組態都會導入變數,所以報表伺服器的部署,並沒有標準的步驟。評估供網際網路存取的報表伺服器時,請確定測試狀況包含您要使用的所有功能,並一律使用安全的連接來進行測試。

在 SharePoint 產品或技術的網際網路部署中執行報表伺服器

如果具有針對透過網際網路連接而設定的 SharePoint 產品或技術執行個體,則可以使用該執行個體當做在 Reporting Services 報表伺服器上所執行報表的前端伺服器。針對 SharePoint 伺服陣列所設定的驗證提供者和權限,可用來存取報表伺服器內容和作業。藉由使用 SharePoint 安全性功能,就不必在您必須自行建立和部署的報表伺服器上使用自訂驗證延伸模組,也不必為網際網路連接設定報表伺服器網站。如需有關伺服器整合的詳細資訊,請參閱<Reporting Services 和 SharePoint 技術整合>。

請參閱

概念

設定報表伺服器虛擬目錄
RSWebApplication 組態檔
整合式安全性和更高的權限
設定 Reporting Services 的安全性

其他資源

部署 Reporting Services

說明及資訊

取得 SQL Server 2005 協助