在安全的入口網站或網站內嵌報表
使用 Power BI 報表的 [ 內嵌 ] 選項,您可以輕鬆地且安全地將報表內嵌在內部入口網站中。 這些入口網站可以是 雲端式 或 裝載於內部部署,例如 SharePoint 2019。 內嵌報表會透過資料列層級安全性 (RLS) 和 Analysis Services 表格式模型物件層級安全性 (OLS) 來尊重所有專案許可權和數據安全性。 它們提供無程式代碼內嵌至任何可接受URL或iframe的入口網站。
[ 內嵌 ] 選項支援 URL 篩選 和 URL 設定。 它可讓您使用只需要基本 HTML 和 JavaScript 知識的低程式碼方法與入口網站整合。
重要
由於進行中的 Chromium 安全性更新, [內嵌 ] 選項已不再像過去一樣運作,而且可能會要求使用者多次驗證。 若要解決此問題,請考慮建立您自己的 Power BI內嵌解決方案。
如何將Power BI報表內嵌至入口網站
在 Power BI 服務 中開啟報表。
在 [檔案] 功能表上,選取 [內嵌報表>網站或入口網站]。
在 [安全內嵌程序代碼] 對話框中,選取 [以下是可用來內嵌此內容的連結] 底下的值。 或者,如果您想要在部落格或網站中使用 iframe,請選取 HTML 底下 的值,即可貼到網站中。
無論是使用者直接開啟報表 URL,還是內嵌在入口網站中的報表 URL,報表存取都需要驗證。 如果使用者尚未在其瀏覽器會話中登入 Power BI,則會出現下列畫面。 當他們選取 [ 登入] 時,應該會開啟新的瀏覽器視窗或索引標籤。 如果他們未收到登入提示,請讓他們檢查快顯封鎖程式。
使用者登入之後,報表隨即開啟,顯示數據並允許頁面流覽和篩選設定。 只有具有檢視許可權的使用者才能在Power BI 中看到報表。 也會套用所有數據 列層級安全性 (RLS) 規則。 用戶必須獲得正確的授權。 他們需要Power BI Pro或 進階版 Per User (PPU) 授權,或內容必須位於 Power BI 進階版 容量的工作區中。 使用者每次開啟新的瀏覽器視窗時都必須登入。 不過,在登入之後,其他報表會自動載入。
當您使用 iframe 時,可能需要編輯 高度和 寬度 值,使其符合入口網站的網頁。
授與報表存取權
[ 內嵌 ] 選項不會自動允許使用者檢視報表。 檢視許可權是在 Power BI 服務 中設定。
在 Power BI 服務 中,您可以與需要存取權的使用者共用內嵌報表。 如果您使用 Microsoft 365 群組,您可以將用戶列為工作區成員。
授權
若要檢視內嵌報表,您需要 Power BI Pro 或 進階版 Per User (PPU) 授權。 或者,內容必須位於 Power BI 進階版 容量 (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 值。
從網頁瀏覽器中的 Power BI 服務 開啟報表,然後複製網址列URL。
將 pageName 屬性及其值附加至 URL 的結尾。
使用 URL 篩選來篩選報表內容
您可以使用 URL 篩選 來提供不同的報表檢視。 例如,下列 URL 會篩選報表以顯示能源產業的數據。
使用 pageName 和 URL 篩選的組合可能很強大。 您可以使用基本 HTML 和 JavaScript 來建置體驗。
例如,以下是您可以新增至 HTML 頁面的按鈕:
<button class="textLarge" onclick='show("ReportSection", "Energy");' style="display: inline-block;">Show Energy</button>
選取時,按鈕會呼叫函式,以更新的 URL 來更新 iframe,其中包含能源產業篩選條件。
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;
}
您可以新增您要建立低程式碼自訂體驗的按鈕數目。
考量與限制
安全內嵌案例支援編頁報表,也支援具有 URL 參數的編頁報表。 如需詳細資訊,請參閱針對 Power BI 中的編頁報表以 URL 傳遞報表參數。
安全內嵌選項適用於發行至 Power BI 服務的報表。
若要裝載安全內嵌的內容,用戶必須使用 HTTPS 做為其最上層頁面。 不支援使用不安全的主機頁面來存取安全內嵌的內容。
每當用戶開啟新的瀏覽器視窗或索引標籤時,用戶都必須登入才能檢視報表。
若要進行驗證,用戶必須啟用彈出視窗。
如果使用者在過去成功存取報表,但現在遇到問題,他們應該清除瀏覽器快取。
某些瀏覽器要求您在登入之後重新整理頁面,特別是當您使用 InPrivate 或 Incognito 模式時。
如果您使用不支援的瀏覽器版本,可能會遇到問題。 如需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,因為它需要早於 11 的 Internet Explorer 版本,或啟用相容性檢視模式。
若要達成單一登錄體驗,請使用 [內嵌在 SharePoint Online] 選項,或使用 user-owns-data 內嵌方法來建置自定義整合。
內嵌選項所提供的自動驗證功能不適用於Power BI JavaScript API。 從 2.10.4 版開始,PBI 內嵌用戶端 SDK 會封鎖它們。 針對 Power BI JavaScript API,請使用 使用者擁有的數據 內嵌方法。
自動驗證功能在內嵌在應用程式中時無法運作,包括行動裝置和傳統型應用程式中。
驗證令牌存留期會根據您的 Microsoft Entra 設定來控制。 當驗證令牌過期時,用戶必須再次登入,才能取得更新的驗證令牌。 默認存留期為一小時,但貴組織中的存留期可能較短或更長。 您無法在此案例中自動重新整理權杖。
相關內容
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: