共用方式為


在安全的入口網站或網站內嵌報表

使用 Power BI 報告的 [內嵌] 選項,您可以輕鬆且安全地在內部 Web 入口網站中內嵌報告。 這些入口網站可以是雲端式託管內部部署,例如 SharePoint 2019。 內嵌的報告會透過資料列層級安全性 (RLS) 和 Analysis Services 表格式模型物件層級安全性 (OLS) 來遵守所有項目權限和資料安全性。 其會提供無程式碼內嵌至任何接受 URL 或 iframe 的入口網站。

[內嵌] 選項支援 URL 篩選及 URL 設定。 其可讓您使用幾乎不需要任何程式碼的方式 (只需要基本 HTML 和 JavaScript 知識) 來與入口網站整合。

重要

因為進行中的 Chromium 安全性更新,所以 [內嵌] 選項不再像過去一樣運作,而且可能會要求使用者進行多次驗證。 若要解決此問題,請考慮建立您自己的 Power BI 內嵌解決方案

如何將 Power BI 報告內嵌到入口網站

  1. 在 Power BI 服務中開啟報表。

  2. 在 [檔案] 功能表上,選取 [內嵌報告] > [網站或入口網站]

  3. 在出現的 [安全內嵌程式碼] 對話方塊中,選取 [您可以使用此連結來內嵌此內容] 下方的值。 或者,如果您想要在部落格或網站中使用 iframe,則請選取 [可在網站貼上的 HTML] 下方的值。

    螢幕擷取畫面:[內嵌選項] 對話方塊

  4. 不論使用者是直接開啟報告 URL,還是開啟入口網站中的內嵌項目,報告存取都需要進行驗證。 如果使用者尚未在其瀏覽器工作階段中登入 Power BI,則會出現下列畫面。 當他們選取 [登入] 時,應該會開啟新的瀏覽器視窗或索引標籤。 若他們並未收到登入提示,請讓他們檢查快顯封鎖程式。

    螢幕擷取畫面:顯示登入以檢視此報告對話方塊的 Power BI 登入頁面。

  5. 在使用者登入後,會隨時開啟報表以顯示資料並允許進行頁面導覽和篩選設定。 只有具有檢視權限的使用者才能在 Power BI 中查看報告。 也都會套用所有資料列層級安全性 (RLS) 規則。 使用者需要獲得正確的授權。 他們需要 Power BI Pro 或 Premium Per User (PPU) 授權,或者內容需要位於 Power BI Premium 容量的工作區中。 每次使用者開啟新的瀏覽器視窗時,都需要登入。 不過,登入之後,會自動載入其他報告。

    螢幕擷取畫面,銷售和行銷範例報告。

  6. 當您使用 iframe 時,可能需要編輯「高度」和「寬度」值,使其符合入口網站中的網頁。

<iframe width="1080" height="760" src="https://app.powerbi.com/reportEmbed?reportId=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true" frameborder="0" allowFullScreen="true"></iframe>

授與報表存取權

[內嵌] 選項不會自動允許使用者檢視報表。 您可以在 Power BI 服務中設定檢視權限。

在 Power BI 服務中,您可以與需要存取的使用者共用內嵌報告。 如果您使用 Microsoft 365 群組,則可以將使用者列為工作區成員。

授權

若要檢視內嵌報告,您需要 Power BI Pro 或 Premium Per User (PPU) 授權。 或者,內容需要位於 Power BI Premium 容量 (EM 或 P SKU) 的工作區中。

使用 URL 設定來自訂內嵌體驗

您可以使用內嵌 URL 的輸入設定來自訂使用者體驗。 在提供的 iframe 中,您可以更新 URL 的 src 設定。

屬性 說明
pageName 您可以使用 pageName 查詢字串參數來設定要開啟的報表頁面。 在 Power BI 服務中檢視報告時,您可在報告 URL 結尾找到此值,如本文稍後所示。
URL 篩選 您可以在接收自 Power BI UI 的內嵌 URL 中使用 URL 篩選來篩選內嵌內容。 透過這種方式,只需要基本 HTML 與 JavaScript 體驗,就可以建置只需要使用少數程式碼的整合。

設定要為內嵌報表開啟的頁面

在 Power BI 服務中檢視報告時,您可以在報表 URL 結尾找到 pageName 值。

  1. 請在網頁瀏覽器中開啟 Power BI 服務的報表,然後複製網址列 URL。

    https://app.powerbi.com/groups/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/reports/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/ReportSection2
    
  2. pageName 屬性和其值附加至 URL 結尾。

    https://app.powerbi.com/reportEmbed?reportId=/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true&pageName=ReportSection2
    

使用 URL 篩選來篩選報告內容

您可以使用 URL 篩選來提供不同的報表檢視。 例如,下列 URL 會篩選報告以顯示能源產業的資料。

使用 pageNameURL Filters 的組合功能強大。 您可以使用基本 HTML 與 JavaScript 來建置體驗。

例如,以下是一個您可新增至 HTML 頁面的按鈕:

<button class="textLarge" onclick='show("ReportSection", "Energy");' style="display: inline-block;">Show Energy</button>

選取時,按鈕會呼叫函數以使用已更新的 URL 來更新 iframe,而此 URL 包括能源產業篩選。

function show(pageName, filterValue)

{

var newUrl = baseUrl + "&pageName=" + pageName;

if(null != filterValue && "" != filterValue)

{

newUrl += "&$filter=Industries/Industry eq '" + filterValue + "'";

}

//Assumes there's an iFrame on the page with id="iFrame"

var report = document.getElementById("iFrame")

report.src = newUrl;

}
https://app.powerbi.com/reportEmbed?reportId=/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx&autoAuth=true&pageName=ReportSection&filter=Industries/Industry eq 'Energy'

您可視需要新增所要的按鈕數目,以建立不需要撰寫太多程式碼的自訂體驗。

考量與限制

  • 安全內嵌案例支援編頁報表,也支援具有 URL 參數的編頁報表。 如需詳細資訊,請參閱針對 Power BI 中的編頁報表以 URL 傳遞報表參數

  • 安全內嵌選項適用於發佈至 Power BI 服務的報告。

  • 若要裝載安全內嵌的內容,使用者必須使用 HTTPS 作為其最上層頁面。 不支援使用不安全的主機頁面來存取安全內嵌的內容。

  • 使用者只要開啟新的瀏覽器視窗,就需要登入,才能檢視報告。

  • 若要進行驗證,使用者需要啟用彈出視窗。

  • 如果使用者過去成功存取過報告,但現在遇到問題,則應該清除其瀏覽器快取。

  • 登入之後,有些瀏覽器會需要您重新整理頁面,特別是您使用 InPrivate 或無痕模式時。

  • 如果您使用不受支援的瀏覽器版本,則可能會遇到問題。 如需 Power BI 所支援瀏覽器的清單,請參閱 Power BI 支援的瀏覽器

  • 如果您的網站將 Cross-Origin-Opener-Policy (COOP) 標頭設定為 "same-origin",則您無法登入來檢視內嵌的內容,因為 MSAL 不支援此標頭。 相反地,請選擇 "restrict-properties" (適用於 Chromium 型瀏覽器) 或 "same-origin-allow-popups."或者,如果您無法變更 Cross-Origin-Opener-Policy,則請直接連結至內嵌的 URL,而不是將其內嵌在 iframe 中。

  • 不支援傳統 SharePoint Server,因為其需要 Internet Explorer 第 11 版之前的版本,或啟用相容性檢視模式。

  • 為獲得單一登入體驗,請使用內嵌在 SharePoint Online 中選項,或使用 user-owns-data 內嵌方法來建置自訂整合。

  • 隨著 [內嵌] 選項提供的自動驗證功能無法搭配 Power BI JavaScript API 使用。 從 2.10.4 版開始,PBI 內嵌用戶端 SDK 會封鎖這些功能。 針對 Power BI JavaScript API,請使用 user-owns-data 內嵌方法。

  • 自動驗證功能內嵌於應用程式時無法運作,包括在行動裝置和傳統型應用程式中。

  • 驗證權杖存留期會以您的 Microsoft Entra 設定作為基礎進行控制。 驗證權杖過期時,使用者需要再次登入以取得更新後的驗證權杖。 預設存留期是一個小時,但在您的組織中這段時間可能更短或是更長。 您無法在此案例中自動重新整理權杖。