設定報表伺服器上的自訂或表單驗證

Reporting Services 提供可延伸的架構,可以讓您插入自訂或表單型驗證延伸模組。 如果部署需求不包含 Windows 整合式安全性或基本驗證,您可能會考慮實作自訂驗證延伸模組。 使用自訂驗證最常見的狀況是支援網際網路或外部網路對 Web 應用程式的存取。 以自訂的驗證延伸模組取代預設的 Windows 驗證延伸模組時,可讓您進一步控制如何授與外部使用者存取報表伺服器的權限。

實際上,部署自訂驗證延伸模組所需的多個步驟包括複製組件和應用程式檔案、修改組態檔,以及測試。 本文只著重於您在組態檔中所指定的驗證設定。

注意

建立自訂驗證延伸模組時,需要自訂的程式碼和對 ASP.NET 安全性的專業知識。 如果不想要建立自訂驗證延伸模組,您可以使用 Microsoft Entry ID 群組與帳戶,但必須大幅縮減報表伺服器部署的範圍。 如需自訂驗證的詳細資訊,請參閱實作安全性延伸模組

此外,您可以在與 SharePoint 產品整合的 SQL Server Reporting Services 環境中,使用表單驗證或自訂驗證延伸模組。 若要這樣做,您必須將 SharePoint 網站設定為使用您選擇的驗證方法。 如需在 SharePoint 中設定驗證的詳細資訊,請參閱 Microsoft Developer Network (MSDN) 上的驗證範例

設定報表伺服器以使用自訂驗證

  1. 在文字編輯器中開啟 rsreportserver.config 檔。

  2. 找出區段 <Authentication>

  3. 複製下列 XML 結構:

    <Authentication>
          <AuthenticationTypes>
                 <Custom />
          </AuthenticationTypes>
          <EnableAuthPersistence>true</EnableAuthPersistence>
    </Authentication>
    
  4. 將它貼到 <Authentication> 區段的現有項目上。

    請注意,您無法搭配其他驗證類型使用 Custom

  5. 儲存檔案。

  6. 開啟報表伺服器的 Web.config 檔。 根據預設,該檔案位於與 rsreportserver.config 檔案相同的資料夾中(請參閱 RsReportServer.config 組態檔)。

  7. 尋找 authentication mode 並將其設定為 Forms

    <authentication mode = "Forms" />
    
  8. 尋找 identity impersonate 並將其設定為 False

    <identity impersonate = "false" />  
    
  9. PassThroughCookies 元素結構加入至組態檔中。 如需詳細資訊,請參閱設定 Web 入口網站來傳遞自訂驗證 Cookie

  10. 儲存檔案。

  11. 如果您設定了向外延展部署,請針對部署中的其他報表伺服器重複先前所有的步驟。

  12. 重新啟動報表伺服器,清除目前開啟的任何工作階段。

實作安全性延伸模組
Reporting Services 自訂安全性範例 (GitHub)
使用報表伺服器驗證
RsReportServer.config 組態檔
設定報表伺服器上的基本驗證
設定報表伺服器上的 Windows 驗證
更多問題嗎? 試試 Reporting Services 論壇