次の方法で共有


チュートリアル: 顧客アプリケーション用のサンプル埋め込みを使用して Power BI コンテンツを埋め込む

適用対象: アプリ所有データ ユーザー所有データ

埋め込み分析Power BI Embedded (Azure オファー) を使用すると、レポート、ダッシュボード、タイルなどの Power BI コンテンツをアプリケーションに埋め込むことができます。

このチュートリアルでは、次の作業を行う方法について説明します。

  • 埋め込み環境を設定する。
  • "顧客向けの埋め込み" ("アプリ所有データ" とも呼ばれます) サンプル アプリケーションを構成する。

アプリケーションを使用するために、ユーザーが Power BI にサインインしたり、Power BI ライセンスを取得する必要はありません。

独立ソフトウェア ベンダー (ISV) や開発者 (サード パーティ向けのアプリケーションを作成する必要がある) の場合は、"顧客向けの埋め込み" 方法を使用して Power BI コンテンツを埋め込むことをお勧めします。

重要

国/地域内クラウド向けのコンテンツを埋め込む場合は、このチュートリアルの最初のいくつかの手順が異なります。 詳細については、国/地域内クラウド向けのコンテンツの埋め込みに関するページを参照してください。

コード サンプルの仕様

このチュートリアルには、次のフレームワークのいずれかで "顧客向けの埋め込み" サンプル アプリケーションを構成する手順が含まれています。

  • .NET Framework
  • .NET Core
  • Java
  • Node JS
  • Python

このコード サンプルでは次のブラウザーがサポートされています。

  • Microsoft Edge
  • Google Chrome
  • Mozilla Firefox

前提条件

このチュートリアルを始める前に、以下の Power BI とコードの依存関係があることを確認してください。

Method

"顧客向けの埋め込み" サンプル アプリを作成するには、これらの手順に従います。

  1. 認証方法を選択します

  2. Microsoft Entra アプリケーションを登録する

  3. Power BI ワークスペースを作成します

  4. Power BI レポートを作成して発行します

  5. 埋め込みパラメーター値を取得します

  6. サービス プリンシパル API アクセス

  7. ワークスペース アクセスを有効にします

  8. コンテンツを埋め込みます

手順 1 - 認証方法を選択する

埋め込みソリューションは、選択する認証方法によって変化します。 そのため、認証方法の違いを理解し、ソリューションに最適なものを決定することが重要です。

以下の表は、サービス プリンシパルマスター ユーザーの認証方法のいくつかの主な違いを説明したものです。

考慮事項 サービス プリンシパル マスター ユーザー
メカニズム Microsoft Entra アプリのサービス プリンシパル オブジェクトを使用すると、Microsoft Entra で Power BI に対して埋め込みソリューション アプリを認証できます。 Microsoft Entra アプリでは Power BI ユーザーの資格情報 (ユーザー名とパスワード) を使用して、Power BI に対して認証を行います。
セキュリティ "サービス プリンシパル" は Microsoft Entra ID で推奨される承認方法です。 サービス プリンシパルを使う場合は、"アプリケーション シークレット" または "証明書" を使用して認証できます。

このチュートリアルでは、"サービス プリンシパル" と "アプリケーション シークレット" の使用についてのみ説明します。 "サービス プリンシパル" と "証明書" を使用して埋め込む場合は、サービス プリンシパルと証明書に関する記事を参照してください。
この認証方法は、"サービス プリンシパル" ほど安全ではありません。 "マスター ユーザー" の資格情報 (ユーザー名とパスワード) に注意する必要があります。 たとえば、それらは埋め込みアプリケーションで公開しないでください。また、パスワードを頻繁に変更してください。
Microsoft Entra ID の委任されたアクセス許可 必要なし。 "マスター ユーザー" または管理者は、アプリから Power BI REST API へのアクセス許可 (スコープとも呼ばれます) に対する同意を付与する必要があります。 たとえば、Report.ReadWrite.All です。
Power BI サービスへのアクセス "サービス プリンシパル" を使用して、Power BI サービスにアクセスすることはできません。 Power BI サービスには、"マスター ユーザー" の資格情報を使用してアクセスできます。
ライセンス Pro ライセンスは必要ありません。 ご自分がメンバーまたは管理者であるすべてのワークスペースのコンテンツを使用できます。 Power BI Pro または Premium Per User (PPU) のライセンスが必要です。

手順 2 - Microsoft Entra アプリケーションを登録する

Microsoft Entra ID にアプリケーションを登録すると、次のことが可能になります。

Microsoft Entra ID にアプリケーションを登録するには、アプリケーションの登録に関する手順に従います。

Note

アプリケーションを登録する前に、使用する認証方法 ("サービス プリンシパル" または "マスター ユーザー") を決定する必要があります。

手順 3 - Power BI ワークスペースを作成する

Microsoft Fabric では、レポート、ダッシュボード、タイルがワークスペースに保持されます。 これらのアイテムを埋め込むには、アイテムを作成してワークスペースにアップロードする必要があります。

ヒント

既にワークスペースがある場合は、この手順を省略できます。

ワークスペースを作成するには、次のようにします。

  1. Fabric にサインインします。

  2. ワークスペースを選択します。

  3. [+ 新しいワークスペース] を選択 します

  4. ワークスペースに名前を付けて、 [保存] を選択します。

手順 4 - Power BI レポートを作成して発行する

次の手順では、レポートを作成してワークスペースにアップロードします。 Power BI Desktop を使用して独自のレポートを作成してから、ワークスペースにそれを発行することができます。 ワークスペースにサンプル レポートをアップロードすることもできます。

ヒント

レポートがあるワークスペースが既に存在する場合は、この手順を省略できます。

サンプル レポートをダウンロードしてワークスペースに発行するには、これらの手順に従います。

  1. GitHub の Power BI Desktop サンプル フォルダーを開きます。

  2. [コード] を選んでから、 [ZIP のダウンロード] を選択します。

    GitHub の Power BI Desktop サンプルの ZIP ダウンロード オプションを示すスクリーンショット

  3. ダウンロードした ZIP を抽出し、Samples Reports フォルダーに移動します。

  4. 埋め込むレポートを選択し、自分のワークスペースに発行します

手順 5 - 埋め込みパラメーター値を取得する

コンテンツを埋め込むには、特定のパラメーター値を取得する必要があります。 以下の表には必要となる値が示されており、それぞれが "サービス プリンシパル" 認証方法、"マスター ユーザー" 認証方法、あるいはその両方に適用できるかどうかが示されています。

コンテンツを埋め込む前に、以下に一覧表示されているすべての値があることを確認してください。 一部の値は、使用する認証方法によって異なる場合があります。

パラメーター サービス プリンシパル マスター ユーザー
クライアント ID 適用対象: 適用対象:
ワークスペース ID 適用対象: 適用対象:
レポート ID 適用対象: 適用対象:
クライアント シークレット 適用対象: 適用対象外
テナント ID 適用対象: Node JS の場合のみ必要
Power BI ユーザー名 適用対象外 適用対象:
Power BI パスワード 適用対象外 適用対象:

クライアント ID

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象マスター ユーザー

クライアント ID GUID ("アプリケーション ID" とも呼ばれます) を取得するには、これらの手順に従います。

  1. Microsoft Azure にログインします。

  2. [アプリの登録] を検索し、 [アプリの登録] リンクを選択します。

  3. Power BI コンテンツを埋め込むために使用する Microsoft Entra アプリを選択します。

  4. [概要] セクションで、 [アプリケーション (クライアント) ID] の GUID をコピーします。

ワークスペース ID

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象マスター ユーザー

ワークスペース ID の GUID を取得するには、これらの手順に従います。

  1. Power BI サービスにサインインします。

  2. 埋め込むレポートを開きます。

  3. URL から GUID をコピーします。 GUID は /groups//reports/ の間にある数値です。

    Power BI サービス URL にワークスペース ID GUID を示すスクリーンショット

または、[管理ポータル] の設定で、ワークスペース名の横にある [詳細] を選択して、ワークスペース ID を見つけることもできます。

管理設定からワークスペース ID を見つける方法を示すスクリーンショット。

レポート ID

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象マスター ユーザー

テナント ID GUID を取得するには、次の手順に従います。

  1. Power BI サービスにサインインします。

  2. 埋め込むレポートを開きます。

  3. URL から GUID をコピーします。 GUID は /reports//ReportSection の間にある数値です。

    Power BI サービスの URL のレポート ID GUID を示すスクリーンショット

クライアント シークレット

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象外マスター ユーザー

クライアント シークレットを取得するには、これらの手順に従います。

  1. Microsoft Azure にログインします。

  2. [アプリの登録] を検索し、 [アプリの登録] リンクを選択します。

  3. Power BI コンテンツを埋め込むために使用する Microsoft Entra アプリを選択します。

  4. [管理] で、[証明書とシークレット] を選択します。

  5. [クライアント シークレット] で、 [新しいクライアント シークレット] を選択します。

  6. [クライアント シークレットの追加] ポップアップ ウィンドウで、アプリケーション シークレットの説明を入力し、アプリケーション シークレットの有効期限を選択し、 [追加] を選択します。

  7. [クライアント シークレット] セクションで、新しく作成されたアプリケーション シークレットの [値] 列にある文字列をコピーします。 そのクライアント シークレットの値が "クライアント ID" です。

注意

クライアント シークレットの値が最初に表示されときに、必ずそれをコピーしてください。 このページから移動すると、クライアント シークレットは表示されなくなり、その値を取得できなくなります。

テナント ID

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象外マスター ユーザー

テナント ID GUID を取得するには、これらの手順に従います。

  1. Microsoft Azure にログインします。

  2. [アプリの登録] を検索し、 [アプリの登録] リンクを選択します。

  3. Power BI コンテンツを埋め込むために使用する Microsoft Entra アプリを選択します。

  4. [概要] セクションで、 [ディレクトリ (テナント) ID] の GUID をコピーします。

Power BI のユーザー名とパスワード

ヒント

適用対象: 適用対象外サービス プリンシパル 適用対象マスター ユーザー

マスター ユーザーとして使用する Power BI ユーザーの "ユーザー名" と "パスワード" を取得します。 これは、Power BI サービスで、ワークスペースを作成してレポートをアップロードするために使用したものと同じユーザーです。

手順 6 - サービス プリンシパル API アクセス

ヒント

適用対象: 適用対象:サービス プリンシパル 適用対象外マスター ユーザー

この手順は、"サービス プリンシパル" 認証方法を使用する場合にのみ関連します。 "マスター ユーザー" を使用する場合は、この手順を省略し、「手順 7 - ワークスペース アクセスを有効にする」に進んでください。

Microsoft Entra アプリから Power BI コンテンツおよび API にアクセスできるようにするには、Power BI 管理者が Power BI 管理ポータルでサービス プリンシパル アクセスを有効にする必要があります。 テナントの管理者でない場合は、テナントの管理者に連絡し、 [テナント設定] を有効にしてもらってください。

  1. "Power BI サービス" で、 [設定]>[設定]>[管理ポータル] の順に選択します。

    Power BI サービスの [設定] メニューの管理者設定メニュー オプションを示すスクリーンショット。

  2. [テナント設定] を選択してから、 [開発者の設定] セクションまで下にスクロールします。

  3. [サービス プリンシパルは Fabric API を使用可能] を展開して、このオプションを有効にします。

    Power BI サービスで、[テナント設定] メニュー オプションの [開発者向け設定] オプションを有効にする方法を示すスクリーンショット。

注意

"サービス プリンシパル" を使用する場合は、"セキュリティ グループ" を使用してテナント設定へのアクセスを制限することをお勧めします。 この機能の詳細については、サービス プリンシパルに関する記事のこれらのセクションを参照してください。

手順 7 - ワークスペース アクセスを有効にする

Power BI サービスでレポート、ダッシュボード、セマンティック モデルなどの Microsoft Entra アプリのアクセス オブジェクトを有効にするには、"サービス プリンシパル" または "マスター ユーザー" を "メンバー" または "管理者" としてご利用のワークスペースに追加します。

  1. Fabric にサインインします。

  2. アクセスを有効にするワークスペースまでスクロールし、[アクセスの管理] を選択します

    Power BI ワークスペースの [その他] メニューのワークスペース アクセス ボタンを示すスクリーンショット。

  3. [アクセス] ペインで、使用する認証方法に応じて、"サービス プリンシパル" または "マスター ユーザー" を [メール アドレスの入力] テキスト ボックスにコピーします。

    Note

    "サービス プリンシパル" を使用する場合、その名前は Microsoft Entra アプリに指定した名前になります。

  4. [追加] を選択します。

手順 8 - コンテンツを埋め込む

Power BI の埋め込みサンプル アプリケーションを使用すると、Power BI の "顧客向けの埋め込み" アプリを作成できます。

Power BI レポートを埋め込むには、これらの手順に従って、"顧客向けの埋め込み" サンプル アプリケーションを変更します。

  1. Power BI の開発者向けサンプル フォルダーを開きます。

  2. [コード] を選んでから、 [ZIP のダウンロード] を選択します。

    GitHub の Power BI 開発者向けサンプルの ZIP ダウンロード オプションを示すスクリーンショット

  3. ダウンロードした ZIP ファイルを抽出し、PowerBI-Developer-Samples-master フォルダーに移動します。

  1. アプリで使用する言語に応じて、次のいずれかのフォルダーを開きます。

    • .NET Core
    • .NET Framework
    • Java
    • Node JS
    • Python

    注意

    "顧客向けの埋め込み" サンプル アプリケーションでサポートされるのは、上記の一覧にあるフレームワークのみです。 React サンプル アプリケーションでサポートされるのは、" 組織向けの埋め込み " ソリューションのみです。

  2. 顧客向けの埋め込みフォルダーを開きます。

  1. これらのいずれかの方法を使用して、"顧客向けの埋め込みサンプル アプリ" を開きます。

    • Visual Studio を使用する場合は、AppOwnsData.sln ファイルを開きます。

    • Visual Studio Code を使用する場合は、AppOwnsData フォルダーを開きます。

  2. appsettings.json を開きます。

  3. 認証方法に応じて、次のパラメーター値を入力します。

    パラメーター サービス プリンシパル マスター ユーザー
    AuthenticationMode ServicePrincipal MasterUser
    ClientId 独自の Microsoft Entra アプリのクライアント ID 独自の Microsoft Entra アプリのクライアント ID
    TenantId 独自の Microsoft Entra のテナント ID 該当なし
    PbiUsername 該当なし "マスター ユーザー" のユーザー名 (「Power BI のユーザー名とパスワード」を参照)
    PbiPassword 該当なし "マスター ユーザー" のパスワード (「Power BI のユーザー名とパスワード」を参照)
    ClientSecret Microsoft Entra ID のクライアント シークレット 該当なし
    WorkspaceId 埋め込みレポートがあるワークスペースの ID (「ワークスペース ID」を参照) 埋め込みレポートがあるワークスペースの ID (「ワークスペース ID」を参照)
    ReportId 埋め込むレポートの ID (「レポート ID」を参照) 埋め込むレポートの ID (「レポート ID」を参照)
  4. 適切なオプションを選択してプロジェクトを実行します。

    • Visual Studio を使用する場合は、 [IIS Express] (再生) を選択します。

    • Visual Studio Code を使用する場合は、[実行] > [デバッグの開始] の順に選択します。

アプリケーションの開発

"顧客向けの埋め込み" サンプル アプリケーションを構成して実行した後、独自のアプリケーションの開発を開始できます。

開発を開始し、Power BI Embedded のすべての新機能と更新プログラムに対応するには、Power BI 埋め込み分析プレイグラウンドをお試しください。

準備ができたら、運用開始の要件を確認します。 また、容量が必要であり、キャパシティ プランニングに関する記事を参照して、ニーズに最も適した SKU を確立する必要があります。

重要

無料の埋め込み試用版トークンを開発に使用した場合は、運用環境用の容量を購入する必要があります。 容量を購入するまで、"無料試用版バージョン" のバナーは埋め込みレポートの上部に引き続き表示されます。

他にわからないことがある場合は、 Power BI コミュニティでご質問ください