設定報表伺服器上的基本驗證
根據預設,SQL Server Reporting Services (SSRS) 會接受指定 Negotiate 和 New Technology LAN Manager (NTLM) 驗證的要求。 如果您的部署包含了使用基本驗證的用戶端應用程式或瀏覽器,您必須將基本驗證加入支援的類型清單中。 同時,如果您要使用報表產生器,必須啟用對報表產生器檔案的匿名存取。
若要在 SSRS 報表伺服器上設定基本驗證,請編輯 RSReportServer.config 檔案中的 XML 元素和值。 您可以複製及貼上本文的範例,以取代預設值。 當您啟用基本驗證之後,在使用者設定外部資料來源 (可提供資料給報表) 的連線屬性時,就無法選取 Windows 整合式安全性選項。 這個選項不適用於資料來源屬性頁。
必要條件
- 以原生模式設定的報表伺服器。
- RSReportServer.config 檔案的寫入權限。
基本驗證的安全性考量
在您啟用基本驗證之前,請確認您的安全性基礎結構有支援它。 使用基本驗證時,報表伺服器 Web 服務會將認證傳遞給本機安全性授權。 如果認證指定本機使用者帳戶,報表伺服器上的本機安全性授權單位會驗證使用者。 然後,使用者會取得對區域資源有效的安全性權杖。 網域使用者帳戶的認證會轉送給網域控制站,並由網域控制站加以驗證。 產生的票證對於網路資源而言是有效的。
如果您希望在將認證傳送至網路中之網域控制站的過程中,能夠減低認證被攔截的風險,就需要通道加密,例如傳輸層安全性 (TLS) (先前稱為安全通訊端層 (SSL))。 基本驗證本身會使用純文字格式傳輸使用者名稱,並使用 base64 編碼方式傳輸密碼。 加入通道加密會讓封包無法讀取。 如需詳細資訊,請參閱在原生模式報表伺服器上設定 TLS 連線。
注意
下列指示用於原生模式報表伺服器。 如果您在 SharePoint 整合模式下部署報表伺服器,您必須使用可指定 Windows 整合式安全性的預設驗證設定。 報表伺服器會使用預設 Windows 驗證延伸模組中的內部功能來支援 SharePoint 整合模式下的報表伺服器。
設定報表伺服器使用基本驗證
在文字編輯器中開啟 RSReportServer.config 設定檔。 如需有關您設定檔位置的相關資訊,請參閱 RsReportServer.config 設定檔。
在檔案中,前往
<Authentication>
行。檢視下列結構並複製最符合您需求的一個結構。 第一個 XML 結構會為
Realm
和DefaultDomain
元素提供預留位置,下一節會對此加以描述。適用於:SQL Server Reporting Services (2016)
<Authentication> <AuthenticationTypes> <RSWindowsBasic> <LogonMethod>3</LogonMethod> <Realm></Realm> <DefaultDomain></DefaultDomain> </RSWindowsBasic> </AuthenticationTypes> <EnableAuthPersistence>true</EnableAuthPersistence> </Authentication>
如果您使用預設值,可以使用下列結構,盡量減少元素數量:
<AuthenticationTypes> <RSWindowsBasic/> </AuthenticationTypes>
適用於: SQL Server Reporting Services (2017 與更新版本) Power BI 報表伺服器
<Authentication> <AuthenticationTypes> <RSWindowsBasic/> </AuthenticationTypes> <EnableAuthPersistence>true</EnableAuthPersistence> <RSWindowsExtendedProtectionLevel>Off</RSWindowsExtendedProtectionLevel> <RSWindowsExtendedProtectionScenario>Any</RSWindowsExtendedProtectionScenario> </Authentication>
在您的設定檔中,以您複製的結構取代現有的
<Authentication>
區段。如果您使用多個驗證類型,請新增
RSWindowsBasic
元素,但不要刪除RSWindowsNegotiate
、RSWindowsNTLM
或RSWindowsKerberos
的項目。請注意,您無法搭配其他驗證類型使用
Custom
驗證類型。使用對環境有效的值來取代空白的
<Realm>
或<DefaultDomain>
值。 如需適當的值,請參閱下一節。儲存檔案。
如果您使用向外延展部署,請針對部署中的其他報表伺服器重複這些步驟。
將您為基本驗證所設定的所有報表伺服器重新開機。 此步驟會清除目前開啟的任何工作階段。
基本驗證元素的值
在您使用 RSWindowsBasic
區段來設定基本驗證時,可指定下列元素。
元素 | 必要 | 有效值 |
---|---|---|
LogonMethod | Yes 如果您不指定值,系統會使用 3。 |
使用值 2 作為網路登入。 將此值用於高效能伺服器,以驗證純文字密碼。 使用值 3 作為純文字登入。 當您使用這個值 (即預設值) 時,登入認證會保留在與每個 HTTP 要求一起傳送的驗證封裝中。 伺服器接著會在連線至網路中的其他伺服器時模擬使用者。 注意:SQL Server 2016 (13.x) Reporting Services 或更新版本 (SSRS) 不支援 0 (適用於互動式登入) 和 1 (適用於批次登入) 的值。 |
Realm | 選用 | 此元素會指定資源分割區,其中包含用於控制組織中受保護資源之存取權的授權和驗證功能。 |
DefaultDomain | 選用 | 此元素會指定伺服器用來驗證使用者的網域。 雖然這個值是選擇性的,但是如果您省略它,報表伺服器會使用電腦名稱當做網域。 如果電腦是網域的成員,該網域就是預設網域。 如果您在網域控制站上安裝報表伺服器,則使用的網域就是電腦所控制的網域。 |