共用方式為


使用 Azure 自動化範本應用程式安裝

自動化範本應用程式安裝,以簡化客戶的 Power BI 部署程式。 範本應用程式提供連線到客戶資料的預先建置報告,但對於不熟悉連線詳細資訊的使用者來說,手動設定可能具有挑戰性。

本教學課程示範資料服務提供者如何使用 Azure Functions 將範本應用程式參數設定自動化。 當客戶點擊預先設定的連結時,自動化會收集必要的資訊、設定參數並重新導向他們以安裝應用程式,只需驗證即可完成設定。

當客戶登入入口網站時,他們會選取您已準備的特殊連結。 此連結:

  • 啟動自動化,其會收集所需的資訊。
  • 預先設定範本應用程式參數。
  • 將客戶重新導向至可安裝應用程式的Power BI 帳戶。

他們所要做的就是選擇 安裝,並對其數據源進行驗證,然後就可以使用了!

此處說明客戶體驗。

自動安裝應用程式的使用者體驗螢幕擷取畫面。

在本教學課程中,您將使用我們建立的自動化安裝 Azure Functions 範例來預先設定及安裝範本應用程式。 為了示範目的,此範例已刻意保持簡單。 它包含 Azure 功能的設定,以使用 Power BI API 來安裝範本應用程式,並自動配置以符合使用者的需求。

如需應用程式使用之一般自動化流程和 API 的詳細資訊,請參閱 自動設定範本應用程式安裝

我們的簡單應用程式會使用 Azure 函式。 如需 Azure Functions 的詳細資訊,請參閱 Azure Functions 檔

基本流程

下列基本流程會列出客戶在入口網站中選取連結來啟動應用程式時所執行的功能。

  1. 使用者登入ISV的入口網站,並選取提供的連結。 此動作將啟動流程。 ISV 的入口網站會在此階段準備使用者特定的設定。
  2. 根據 ISV 租用戶中註冊的 服務主體(僅限應用程式令牌),ISV 取得僅限 應用程式 的令牌。
  3. 使用 Power BI REST API,ISV 會建立 安裝票證,其中包含 ISV 所準備的使用者特定參數位態。
  4. ISV 會使用 POST 包含安裝票證的重新導向方法,將使用者重新導向至 Power BI。
  5. 系統會使用安裝票證將使用者重新導向至其Power BI帳戶,並提示您安裝範本應用程式。 當使用者選取 [ 安裝] 時,會為其安裝範本應用程式。

備註

雖然ISV會在建立安裝票證的過程中設定參數值,但數據源相關認證只會由使用者在安裝的最後階段提供。 此安排可防止他們向第三方公開,並確保使用者與範本應用程式數據源之間的安全連線。

先決條件

設定自動化開發環境

繼續設定應用程式之前,請遵循 快速入門:使用 Azure 應用程式組態建立 Azure Functions 應用程式 來開發 Azure 函式以及 Azure 應用程式設定中的指示。 如本文所述,建立您的應用程式組態。

在 Microsoft Entra ID 中註冊應用程式

建立服務主體,如 使用服務主體和應用程式秘密內嵌Power BI內容中所述。

請務必將應用程式註冊為 伺服器端 Web 應用程式。 您註冊伺服器端 Web 應用程式以建立應用程式秘密。

儲存 應用程式識別碼 (ClientID) 和 應用程式秘密 (ClientSecret),以取得後續步驟。

將服務主體新增至範本應用程式工作區作為系統管理員,讓您可以測試自動化工作流程。

範本應用程式準備

建立範本應用程式並準備好進行安裝之後,請儲存下列資訊以取得後續步驟:

  • 安裝 URL 中 應用程式識別碼套件密鑰擁有者識別碼 的顯示方式是指在建立應用程式的過程中,於 定義範本應用程式屬性 過程結尾時顯示。

    您也可以在範本應用程式的 [發行管理] 窗格中選取 [取得連結],以取得相同的連結。

  • 參數名稱 定義於範本應用程式的語意模型中。 參數名稱是區分大小寫的字串。 當您定義範本應用程式的屬性或 Power BI 中的語意模型設定時,也可以從 [參數設定] 索引標籤取它們。

備註

如果範本應用程式已準備好進行安裝,則您可以在範本應用程式上測試預先設定的安裝應用程式,即使 AppSource 尚未公開提供。 若要讓租使用者外部的用戶能夠使用自動化安裝應用程式來安裝範本應用程式,必須在 AppSource中公開提供範本應用程式。 使用所建立的自動化安裝應用程式散發範本應用程式之前,請務必 將其發佈至合作夥伴中心

安裝和設定範本應用程式

在本節中,您將使用我們建立的自動化安裝 Azure Functions 範例來預先設定及安裝範本應用程式。 為了示範目的,此範例已刻意保持簡單。 它可讓您使用 Azure 函式Azure 應用程式組態 ,輕鬆地部署及使用範本應用程式的自動化安裝 API。

下載 Visual Studio

下載 Visual Studio (版本 2017 或更新版本)。 請務必下載最新的 NuGet 套件

下載自動化安裝 Azure Functions 範例

從 GitHub 下載 自動化安裝 Azure Functions 範例 以開始使用。

自動安裝 Azure Functions 範例的螢幕擷取畫面。

設定您的 Azure 應用程式組態

若要執行此範例,您必須使用此處所述的值和索引鍵來設定 Azure 應用程式組態。 密鑰是 應用程式識別碼應用程式密碼,以及範本應用程式的 appIdpackageKeyownerId 值。 如需如何取得這些值的相關信息,請參閱下列各節。

索引鍵也會定義在 Constants.cs 檔案中。

組態金鑰 意義
TemplateAppInstall:Application:AppId appId 來自 安裝 URL
TemplateAppInstall:Application:PackageKey 來自安裝 URLpackageKey
TemplateAppInstall:Application:OwnerId 來自安裝 URLownerId
TemplateAppInstall:ServicePrincipal:ClientId 服務主體 應用程式識別碼
TemplateAppInstall:ServicePrincipal:ClientSecret 服務主體 應用程式金鑰

此處會顯示Constants.cs檔案。

Constant.cs檔案的螢幕截圖。

取得範本應用程式屬性

填入所有相關範本應用程式屬性,因為它們會在建立應用程式時定義。 這些屬性是範本應用程式的 appIdpackageKeyownerId 值。

若要取得上述值,請遵循下列步驟:

  1. 登入 Power BI

  2. 移至應用程式的原始工作區。

  3. 開啟 [ 發行管理] 窗格。

    [發行管理] 窗格的螢幕擷取畫面。

  4. 選取應用程式版本,並取得其安裝連結。

    發行管理按鈕的螢幕擷取畫面。

  5. 將連結複製到剪貼簿。

    獲取鏈接按鈕的屏幕截圖。

  6. 此安裝 URL 會保存三個需要其值的 URL 參數。 使用應用程式的 appIdpackageKeyownerId 值。 範例 URL 將類似此處所示的內容。

    https://app.powerbi.com/Redirect?action=InstallApp&appId=66667...9cccc0000&packageKey=b2df4b...dLpHIUnum2pr6k&ownerId=aaaa...22222&buildVersion=5
    

取得應用程式識別碼

使用來自 Azure 的應用程式識別碼填入 applicationId 資訊。 應用程式會使用 applicationId 值,向要求許可權的用戶識別自己。

若要取得應用程式識別碼,請遵循下列步驟:

  1. 登入 Azure 入口網站

  2. 從入口網站功能表中,選取 [所有服務]。

  3. 在 [所有服務] 頁面上的 [ 身分識別 ] 區段中,選取 [ >應用程式註冊]。

  4. 選取需要 應用程式識別碼的應用程式

    選擇需要應用程式 ID 的應用程式的螢幕擷取畫面。

  5. 有一個應用程式識別碼被列為 GUID。 使用此應用程式識別碼作為應用程式的 applicationId 值。

    applicationId 值的螢幕擷取畫面。

取得應用程式秘密

從 Azure 中應用程式註冊區段的 [金鑰] 區段填入 ApplicationSecret 資訊。 當您使用 服務主體時,此屬性可運作。

若要取得應用程式密碼,請遵循下列步驟:

  1. 登入 Azure 入口網站

  2. 從入口網站功能表中,選取 [所有服務]。

  3. 在 [所有服務] 頁面上的 [ 身分識別 ] 區段中,選取 [ >應用程式註冊]。

    選擇應用程式的螢幕截圖。

  4. 管理 下選擇憑證和秘密

  5. 選取 [新用戶端密碼]

  6. 在 [ 描述 ] 方塊中輸入名稱,然後選取持續時間。 然後選取 [新增 ] 以取得應用程式的值,您會在客戶端密碼的 [值 ] 標題底下看到此值。

在本機測試您的函式

請依照在 本機執行函 式中所述的步驟執行您的函式。

將您的入口網站設定為向函式的 URL 發出 POST 請求。 例如 POST http://localhost:7071/api/install。 要求本文應該是描述索引鍵/值組的 JSON 物件。 索引鍵是Power BI Desktop 中所定義的 參數名稱 。 值是範本應用程式中每個參數所要設定的所需值。

備註

在生產環境中,參數值會由入口網站的預期邏輯來推斷給每個使用者。

所需的流程應該是:

  1. 入口網站會為每個使用者或會話準備要求。
  2. 您的 Azure 函式會收到 POST /api/install 要求。 要求主體是由鍵值對所組成。 鍵是參數名稱。 值是所要設定的值。
  3. 如果一切都已正確設定,瀏覽器應該會自動重新導向至客戶的Power BI 帳戶,並顯示自動化安裝流程。
  4. 安裝時,參數值會設定為步驟 1 和 2 中的設定。

將專案發佈至 Azure

若要將專案發佈至 Azure,請遵循 Azure Functions 檔中的指示。 然後,您可以將範本應用程式自動化安裝 API 整合到產品中,並開始在生產環境中進行測試。