安全性 (報表產生器)

報表產生器是撰寫報表用的用戶端應用程式,專為使用 SQL Server Reporting Services 報表伺服器而設計。 該報表伺服器可以設定為以獨立伺服器的原生模式運作,或者以 SharePoint 整合模式運作以支援 SharePoint 網站上的報表。

在報表產生器中,您可以撰寫報表、共用的資料集以及可重複使用的報表組件。 從報表伺服器或 SharePoint 網站上,您可以編輯報表並且加入共用的資料來源、共用的資料集以及共用的報表組件。

注意

自 SQL Server Reporting Services 2019 與 Power BI Report Server 2022 年 9 月起的所有 SQL Server Reporting Services 版本及所有 Power BI 報表伺服器版本,皆已退場報表組件。

在撰寫、發行並且使用報表與報表相關的項目之前,您必須先了解與下列層面相關的安全性功能:

  • 您在其中發行報表的報表伺服器或 SharePoint 網站:這些功能是由報表伺服器管理員或 SharePoint 網站管理員管理。

  • 已發行的報表與報表相關項目:報表相關的項目包括內嵌與共用的資料來源,與其認證、共用資料集、參數、報表組件與報表模型。 管理套用至這些項目之安全性功能的報表作者。 報表伺服器管理員或 SharePoint 網站管理員必須授與報表作者適當的權限,報表作者才能夠發行並共用項目。

  • 報表所使用的外部資料來源:外部資料來源的擁有者會管理這些功能。

  • 以外部資料來源為基礎的報表模型:模型設計人員會管理這些功能。

  • 互動式報表功能,例如參數:報表作者會管理這些功能。

請檢閱本文中的資訊,協助您更深入了解如何使用安全性功能,進一步協助管理及維護報表與報表相關項目的安全性。

瞭解報表伺服器的安全性

發行報表與檢視報表是需要有適當權限才能進行的作業。 報表伺服器管理員會授與使用權限,確保只有獲得授權的使用者才可以在下列其中一種報表伺服器上發行並檢視報表:

  • 以原生模式設定的報表伺服器

    若要連接或瀏覽至報表伺服器,您必須具有有效的 URL 與存取伺服器的適當權限。

    若要在報表伺服器上檢視或發行項目,套用到報表相關項目與作業的多組使用權限會根據角色分組。 報表伺服器管理員會將您指派為一個或多個角色。 例外,預先定義的角色 [瀏覽者] 可以讓您檢視報表、資料夾、模型與資源。

    如果您無法連接或瀏覽至報表伺服器,請連絡報表伺服器管理員。 如需詳細資訊,請參閱 Reporting Services 安全性與保護

  • 以 SharePoint 整合模式設定的報表伺服器

    若要連線至與報表伺服器整合的 SharePoint 網站,您必須具有有效之 SharePoint 網站或子網站的 URL。 您也必須有足夠的權限才能存取。

    用於存取報表相關項目和作業的權限是透過 SharePoint 安全性原則所授與,這些原則會將使用者或群組帳戶對應至權限等級 (相對於項目)。

    如果您無法連接或瀏覽到 SharePoint 網站或子網站,請連絡 SharePoint 網站管理員。

瞭解已發行報表與報表相關項目的安全性

報表伺服器管理員會管理報表與報表相關項目的安全性。 報表相關的項目包括內嵌與共用的資料來源,包括了認證、共用的資料集、參數、報表組件與模型。

在報表伺服器或 SharePoint 網站上,報表與報表相關項目及作業的安全性為獨立的。 用於存取項目和作業的權限是透過安全性原則所授與,這些原則會將使用者或群組帳戶對應至權限等級 (相對於項目)。 容器中的項目繼承容器上的權限,以減少維護大量原則的複雜性與額外負荷。 例如,如果使用者對某一資料夾具有特定的 [檢視報表] 權限,那麼該使用者對於資料夾中的項目也具有 [檢視報表] 權限。

可以透過使用項目層級安全式的方式,覆寫項目或資料夾上的權限。 套用項目層級安全性後,來自父容器的權限繼承將不再適用於該項目。 如果對資料夾套用項目層級安全性,則巢狀資料夾會繼承相同的權限。

如果您無法瀏覽到或找到其他使用者已為您發行的項目,可能表示您對該項目或資料夾尚未具有適當的權限。

您可以讓其他人瀏覽並尋找已發佈要共用的項目。 若要這樣做,您必須請報表伺服器管理員設定資料夾組織,以便為您的使用者提供存取權限。 撰寫報表並且執行已發行的報表時,必須能夠使用 Access。

如需詳細資訊,請參閱下列文章:

報表組件更新通知

報表組件會發行到報表伺服器,讓其他使用者可以共用這些組件。 根據預設,您可以指定要發行報表組件的目標位置。

在報表中加入報表組件的使用者可以啟用更新功能。 啟用這項功能時,使用者會在報表伺服器上的報表組件發生變更時,收到通知。

如果報表組件已經從原來的位置移動,那麼更新通知會包含報表組件目前的位置以及先前的位置。 只接受來自受信任位置的更新。

如需詳細資訊,請參閱報表組件 (報表產生器)

瞭解報表資料與外部資料來源的安全性

若要存取報表中每一個外部資料來源的資料,您可以建立內嵌資料來源或是將加入報表中共用資料來源或共用資料集的參考。

針對每一個外部資料來源,您必須提供存取該來源及其底層資料的適當認證。 資料來源擁有者會指定提供存取的認證類型。

認證不會儲存在報表定義中。 這些認證會另外進行管理,有別與報表伺服器或 SharePoint 以及報表撰寫用戶端上的報表。

在報表設計階段,認證會用於執行資料集查詢和預覽報表。 在執行階段,認證會用於執行報表與快取查詢結果。 您也可以獨立地快取共用資料集查詢結果。 設計階段與執行階段使用的認證可能會不同。 如需詳細資訊,請參閱 在報表產生器中指定認證

如需保護資料安全的詳細資訊,請參閱 SQL Server 資料庫引擎和 Azure SQL 資料庫的資訊安全中心

如需資料來源的詳細資訊,請參閱建立資料連接字串 - 報表產生器

瞭解模型與安全性篩選

從以外部資料為基礎的報表模型擷取資料時,您可以在模型中套用安全性篩選。 這項功能是保護資料安全的好方法,因此每位執行報表的使用者都只能看到他們擁有權限使用的資料。

報表參數不能用於橫列層級安全性,也無法防止使用者或使用者群組查看特定的橫列。 若要為報表內所顯示的資料套用安全性,您需要使用安全性篩選或模型項目安全性。

瞭解撰寫具有互動式功能之報表的安全性

報表經常會使用參數,讓使用者可以互動式地自訂他們的報表檢視。 請採用下列秘訣協助設計出遵循優良作法的報表:

  • 除非您會提供有效的值,否則請不要使用依據查詢參數以及屬於文字類型的參數。 可用的值清單有助於使用者只選擇有效的值。 若無有效的值清單,您將無法限制使用者可以輸入的值。

  • 請勿使用全域 [&UserID] 來維護私人資料的安全。 這個值做為報表參數時,可以利用 URL 存取語法在報表 URL 中指定它。 在共用資料集的運算式中使用這個值,會讓資料集無法被快取。 如需詳細資訊,請參閱網址 (URL) 存取參數參考

項目發行到報表伺服器後,報表伺服器管理員可以指定以角色為基礎的安全性或資料夾與項目層級安全性,藉此維護這些項目的安全。 如需詳細資訊,請參閱保護報表與資源安全