ここでは、アプリケーション内に Power BI コンテンツを埋め込むために必要な手順について説明します。

最近、Microsoft は Power BI Premium を発表しました。この新しい容量ベースのライセンス モデルは、ユーザーによるコンテンツのアクセス、共有および配布方法の柔軟性を高めます。 また、Power BI サービスのスケーラビリティとパフォーマンスが向上します。

Power BI Premium の導入に伴い、Power BI Embedded および Power BI サービスが統合され、Power BI コンテンツをアプリにより迅速に埋め込むことができるようになります。 これは、1 つの API サーフェスで一貫性のある一連の機能を利用でき、コンテンツを埋め込む際にダッシュボード、ゲートウェイ、アプリ ワークスペースなどの最新の Power BI 機能にアクセスできることを意味します。 今後は、Power BI Desktop で作業を開始し、Power BI Premium でデプロイできるようになります。

この記事では、Power BI と Power BI 以外の両方のユーザー向けの Power BI コンテンツの埋め込みについて説明します。 2 つの手順は似ています。 手順が Power BI 以外のユーザー向けの埋め込みに固有である場合、引き出し線が示されます。

これを可能にするためにアプリケーションで実行する必要がある手順がいくつかあります。 アプリケーション内で埋め込みコンテンツを作成し、使用できるようにするために必要な手順を順に説明していきます。

メモ:

Power BI API では引き続き、アプリ ワークスペースをグループと呼びます。 したがって、グループと記述されている場合はすべて、アプリ ワークスペースを使用していることを意味します。

手順 1: 埋め込み分析開発環境をセットアップする

アプリケーションへのダッシュボードとレポートの埋め込みを開始する前に、埋め込めるように環境がセットアップされていることを確認する必要があります。 セットアップの一環として、以下を行う必要があります。

メモ:

アプリケーションの開発には、Power BI Premium は必要はありません。 アプリケーションの開発者には Power BI Pro ライセンスが必要になります。

Azure Active Directory テナント

Power BI からアイテムを埋め込むには、Azure Active Directory (Azure AD) テナントが必要になります。 このテナントには少なくとも 1 人の Power BI Pro ユーザーが必要です。 また、テナント内で Azure AD アプリを定義する必要があります。 既存の Azure AD テナントを利用することも、埋め込み専用に新しいものを作成することもできます。

使用するテナントのセットアップを判別する必要があります。

  • 既存の企業の Power BI テナントを使用しますか。
  • アプリケーションで個別のテナントを使用しますか。
  • 顧客ごとに個別のテナントを使用しますか。

既存のテナントを使用しない場合や、アプリケーション、または顧客ごとに新しいテナントを作成するよう選択できる場合は、「Azure Active Directory テナントを作成する」または「Azure Active Directory テナントを取得する方法」を参照してください。

Power BI Pro ユーザー アカウントを作成する

コンテンツを埋め込む場合、1 つの Power BI Pro アカウントのみが必要となります。 ただし、アイテムに固有のアクセス権を持ついくつかの異なるユーザーが必要になる場合があります。 ここでは、テナント内で考慮する必要がある可能性があるユーザーを示します。

次のアカウントはテナント内に存在し、Power BI Pro ライセンスを割り当てる必要があります。 Power BI 内でアプリ ワークスペースを使用する場合は、Power BI Pro ライセンスが必要です。

組織/テナント管理者ユーザー

組織/テナントのグローバル管理者ユーザーをアプリケーションで使用するアカウントとして使用しないことをお勧めします。 そうすれば、組織内でのアプリケーション アカウントによるアクセスが最小限に抑えられます。 管理者ユーザーは、埋め込むために作成されたすべてのアプリ ワークスペースの管理者にすることをお勧めします。

コンテンツを作成するアナリストのアカウント

複数のユーザーが Power BI のコンテンツを作成する可能性があります。 コンテンツを作成し、Power BI に配置するアナリストごとに Power BI Pro アカウントが必要になります。

Power BI 以外のユーザーのアプリケーション マスター ユーザー アカウント

これは、Power BI 以外のユーザー向けにコンテンツを埋め込む場合に、アプリケーションで使用するアカウントです。 組織内で本当に必要なのはこのアカウントだけです。 管理者およびアナリスト アカウントとしても使用できますが、お勧めできません。 アプリケーションのバックエンドにはこのアカウントの資格情報が格納され、Power BI API で使用する Azure AD 認証トークンを取得するために使用されます。 このアカウントは、Power BI 以外のユーザーに使用する、アプリケーションの埋め込みトークンを生成する場合に使用されます。

このアカウントは、埋め込むために使用されているアプリ ワークスペースの管理者である必要があります。

アプリの登録とアクセス許可

REST API の呼び出しを行うには、Azure AD にアプリケーションを登録する必要があります。 詳しくは、「Azure AD アプリを登録して Power BI コンテンツを埋め込む」をご覧ください。

アプリ ワークスペースを作成する

Power BI 以外のユーザー (アプリ所有データ) 向けにダッシュボードとレポートを埋め込む場合は、そのダッシュボードとレポートをアプリ ワークスペース内に配置する必要があります。 アプリ ワークスペースの作成方法については、「アプリ ワークスペースを作成する」をご覧ください。

前述のマスター アカウントは、アプリ ワークスペースの管理者にする必要があります。

レポートを作成してアップロードする

Power BI Desktop を使用してレポートとデータセットを作成し、アプリ ワークスペースにこれらのレポートを発行できます。 レポートを発行するエンド ユーザーには、アプリ ワークスペースに発行するための Power BI Pro ライセンスが必要です。

手順 2: コンテンツを埋め込む

アプリケーション内では、Power BI で認証する必要があります。 Power BI 以外のユーザー向けにコンテンツを埋め込む場合、アプリケーション内にマスター アカウントの資格情報を格納する必要があります。 詳しくは、「ユーザーを認証し、Power BI アプリ用の Azure AD アクセス トークンを取得する」をご覧ください。

認証を行った後、アプリケーション内で、Power BI と JavaScript API を使用して、ダッシュボードとレポートをアプリケーションに埋め込みます。

Power BI ユーザー (ユーザー所有データ) の埋め込みについては、次をご覧ください。

ISV のシナリオで一般的な Power BI 以外のユーザー (アプリ所有データ) での埋め込みの場合は、次をご覧ください。

Power BI 以外のユーザー (アプリ所有データ) 向けに埋め込む場合は、埋め込みトークンが必要です。 詳細については、「GenerateToken」を参照してください。

手順 3: ソリューションを運用に昇格する

運用環境に移行する準備ができたら、以下の手順を実行する必要があります。

Power BI ユーザー (ユーザーがデータを所有している場合)

Power BI ユーザー向けに埋め込む場合、アプリケーションへのアクセス方法を知らせるだけです。

Premium 容量によってそのワークスペースがバックアップされている場合、無料ユーザーは、グループ (アプリ ワークスペース) から埋め込まれたコンテンツを利用できます。 無料ユーザーは、グループ (アプリ ワークスペース) のメンバーとしてリストされている必要があります。そうでないと、401 非承認エラーが表示されます。

Power BI 以外のユーザー (アプリがデータを所有している場合)

Power BI 以外のユーザー向けに埋め込む場合は、次の操作を行います。

  • 組織の運用テナントを使用できますが、運用環境用に新しい埋め込み分析環境を作成することをお勧めします。 詳細については、上記の手順 1. を参照してください。

  • 開発用に個別のテナントを使用する場合は、アプリ ワークスペース、ダッシュボードおよびレポートが運用環境で利用可能であることを確認する必要があります。 また、運用テナントの Azure AD でアプリケーションを作成し、手順 1. のとおり、適切なアプリにアクセス許可を割り当てたことを確認する必要があります。

  • ニーズに合う容量を購入します。 以下の表を使用することで、必要になる可能性がある Premium 容量の SKU を把握できます。 詳細については、「Embedded analytics capacity planning whitepaper」 (埋め込み分析の容量計画に関するホワイト ペーパー) を参照してください。 購入する準備ができたら、Office 365 管理センター内で購入できます。

容量ノード 合計コア
(バックエンド + フロントエンド)
バックエンド コア フロントエンド コア DirectQuery/ライブ接続の制限 ピーク時の最大のページ レンダリング数
EM1 1 v コア 0.5 コア、3 GB の RAM 0.5 コア 1-300
EM2 2 v コア 1 コア、5 GB の RAM 1 コア 301-600
EM3 4 v コア 2 コア、10 GB の RAM 2 コア 601-1,200
P1 8 v コア 4 コア、25 GB の RAM 4 コア 1 秒あたり 30 1,201-2,400
P2 16 v コア 8 コア、50 GB の RAM 8 コア 1 秒あたり 60 2,401-4,800
P3 32 v コア 16 コア、100 GB の RAM 16 コア 1 秒あたり 120 4,801-9600
メモ:

グローバルまたは課金管理者は、Power BI Premium を購入するためには、テナント内に存在する必要があります。 Power BI Premium の購入方法については、「Power BI Premium の購入方法」を参照してください。

  • アプリ ワークスペースを編集し、[詳細] で Premium 容量にそれを割り当てます。

  • 更新されたアプリケーションを運用環境にデプロイし、Power BI サービスからのレポートの埋め込みを開始します。

管理の設定

グローバル管理者または Power BI サービス管理者は、REST API を使う機能を有効または無効にできます。 管理者は、組織全体または個々のセキュリティ グループに対してこれを設定できます。 既定では組織全体に対して有効になります。 これは Power BI 管理ポータルから行います。

次の手順

Power BI で埋め込み
Power BI に Power BI Embedded ワークスペース コレクション コンテンツを移行する方法
Power BI Premium とは
Power BI Premium の購入方法
JavaScript API Git リポジトリ
Power BI C# Git リポジトリ
JavaScript 埋め込みサンプル
埋め込み分析の容量計画に関するホワイト ペーパー
Power BI Premium ホワイト ペーパー

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