如何跨組織安全地分享Power BI報告
微軟最近發布的一份技術白皮書,詳細介紹了如何通過Azure Active Directory Business to Business(AAD B2B)跨組織分發Power BI報告。不同於Web公開發布,這種發布方式要求用戶必須取得訪問許可權,保證了數據的安全性。
本文介紹白皮書核心內容(文章末尾附英文版下載鏈接)
文章以虛擬公司Contoso的情景為例,這家公司與全球多家供應商在組件、材料和服務領域有深入合作,現在,Contoso將供應鏈全流程的關鍵指標通過Power BI進行監控,員工和各級供應商都可以通過Power BI儀錶板監控各自節點的數據表現。
為了實現這一方案,Contoso建立了BI門戶,使用AAD作為用戶身份識別程序,將報告分發給公司員工和合作夥伴。
兩種傳統分發方式
除了AAD這種方式,Power BI已經提供了另外兩種分發方式。
方式一:複製一套賬戶,為組織外的用戶開通Contoso域名下的賬戶,成為組織的「隱形成員」。這種方式簡單直接,但訪問者需要記錄新的ID和密碼,後續供應商的人員變動需要Contoso管理員手工維護更新,成本比較高。
方式二:開發自定義訪問許可權的嵌入式應用,這種方法比較靈活,數據訪問許可權被定義在應用中,但大部分組織不具備足夠的時間和資源來開發這種應用。
Power BI + AAD B2B 配置步驟
- 在Power BI Service上創建BI 門戶:創建一個APP,訪問許可權後續將分配給相應的內部用戶和訪客。(步驟略,可參看官網說明)
- 邀請訪客,分兩種方式:計劃邀請(Planned)和一對一邀請(Ad-hoc)
- 計劃邀請:提前向需要訪問報告的外部訪客發送AAD註冊邀請,可以在AAD門戶手工配置也可以通過Power shell批量配置。(需要租戶的管理員許可權)
- 一對一邀請:某些情況下無法事先分配報告閱讀者,或者需要由製作報告的分析師單獨指定報告的閱讀者,此時可以使用一對一邀請。
在許可權配置頁面輸入外部用戶的工作郵箱,此用戶稍後會收到郵件邀請,點擊同意會自動跳轉至該報告內容。
注意:外部用戶在首次訪問的時候需要被邀請,之後可以自動識別身份。
將此鏈接保存到書籤,後續可以直接訪問。
原理
Power BI與AAD B2B的集成基於工作郵件地址,如果訪客沒有AAD身份,可以按提示創建
需要注意的是這個AAD賬戶也同時在相應的外部組織中維護和同步,所以外部訪客可以使用本組織的工作郵件作為登錄用戶名。同時,當他離職後,這個工作郵件也會被自動註銷。
許可證分配
Contoso有三種方式向外部用戶分配許可證
方式1:Contoso購買了Power BI Premium,將報告發布到Premium專用的Capacity,外部用戶訪問不需要Pro License。
方式2:由Contoso分配Pro license給外部用戶。這種方式在Office 365管理員門戶中完成配置,無需用戶自己購買,但此許可只針對Contoso的報告生效。
方式3:外部訪客自行解決Pro License,從本組織中獲取的Pro License,也可以訪問Contoso的報告。
數據訪問許可權
基於行級別安全性的配置方式,通過AAD驗證的外部訪客ID與組織內ID一樣,也可以被自動識別。
配置動態行級別安全性和FAQ(略,詳見英文白皮書)
鏈接本地部署數據源
通過本地部署的數據網關,Contoso可以將SQL Server或SSAS作為數據源,這些數據源可以與Power BI Service共享相同的許可權配置。
由於本地部署的AD沒有存儲外部用戶的身份,一個解決方案是由Contoso的管理員給這些外部用戶開通對應的內部賬戶,然後將兩者Mapping。
這種方式適用於用戶量較少或者外部用戶可以映射到一個內部賬戶的情況,對於更複雜的情形,需要在AD Object model通過腳本和代碼實現。(相關鏈接參考白皮書)
邀請許可權控制(參考白皮書)
白皮書下載
本文收錄於公眾號Power BI極客 - 企業部署系列文章
推薦閱讀:
※Power BI - Earlier 公式
※大多書上沒說明白的DAX計算核心原理與計算上下文
※PowerQuery的優勢與短板
※DAX學習分享:十條經驗
※Power BI 即將放出的黑科技—Microsoft Data Insight Summit精華回顧
TAG:PowerBI |