ワークスペースの分離を自動化する

完了

複数の組織で 1 つの "マルチテナント アプリ" を使用し、それぞれの組織が 1 つのテナントなっている場合があります。 Power BI 分析を埋め込むマルチテナント アプリでは、アプリ ユーザーに外部ユーザーが含まれるため、"顧客向け" シナリオが使用されます。 マルチテナント アプリを設計するときは、2 つの異なるテナント モデルから選択できます。

推奨される方法は、"ワークスペース分離" モデルを使用することです。 このアプローチは、テナントごとに 1 つの Power BI ワークスペースを作成することによって実現できます。 各ワークスペースには、そのテナントに固有の Power BI 成果物が含まれており、データセットはテナントごとに個別のデータベースに接続されます。

別の方法として、単一の "マルチカスタマー データベース" モデルを使用できます。 ソリューションでこのモデルを使用すると、すべてのテナント間で共有される一連の Power BI 成果物を含む 1 つのワークスペースで分離が実現されます。 データセットで定義されている行レベル セキュリティ (RLS) ロールは、データをより安全にフィルター処理して、組織がそれ自体のデータのみを表示できるようにするのに役立ちます。

注意

RLS の適用の詳細については、「Power BI 埋め込み分析のデータ アクセス許可を適用する」モジュールを参照してください。

マルチテナント ソリューション (顧客ごとに別々のデータベースとマルチカスタマー データベースの比較を含む) の詳細については、「Power BI Embedded のサービス プリンシパル プロファイル」を参照してください。

ワークスペース分離モデルを使用する場合は、最初に "ゴールデン ワークスペース" を作成します。 ゴールデン ワークスペースは、データセット、レポート、ダッシュボードなど、既定の Power BI 成果物を含むテンプレート ワークスペースです。 新しいテナントが導入されるたびに、このゴールデン ワークスペースのコンテンツが自動化ソリューションによって新しいワークスペースにレプリケートされます。

自動化ソリューションでは、次の手順を使用して新しいテナントを追加できます。

  1. Microsoft Graph を使用してサービス プリンシパルを作成する。

  2. Power BI REST API を使用して、サービス プリンシパルをゴールデン ワークスペースの共同作成者として追加する。

  3. 自動化ソリューションは、この新しいサービス プリンシパルと Power BI REST API を使って、次のことを行います。

    1. 新しいテナントのワークスペースを作成する。

    2. ゴールデン ワークスペースのコンテンツを新しいワークスペースにレプリケートする。

    3. データセット接続を更新して、そのテナントのデータに接続する。

    4. 新しいワークスペースを容量に割り当てる。

注意

テナントごとに新しいサービス プリンシパルを作成することは、必須ではありません。 ただし、可能な限り高い分離を実現するために、テナント ワークスペースごとにサービス プリンシパル プロファイルを作成することをお勧めします。 詳細については、「Power BI Embedded のサービス プリンシパル プロファイル」を参照してください。

ワークスペースの分離を自動化する方法について理解を深めるために、次のビデオをご覧ください。