こんにちは、Power BI サポート チームの亀田です。
Microsoft Fabric で新しく利用できるようになった認証方式として、ワークスペース ID があります。ワークスペース ID は、Microsoft Fabric 内のワークスペースに関連付けられたサービス プリンシパルで、信頼されたワークスペース アクセスを通じてファイアウォールが有効な Azure Data Lake Storage Gen2 (以降 ADLS Gen2) アカウントへの接続が可能です。今回は、ワークスペース ID を利用した信頼されたワークスペース アクセスで ADLS Gen2 に接続する方法をご紹介します。
重要
本記事は弊社公式ドキュメントの公開情報を元に構成しておりますが、
本記事編集時点と実際の機能に相違がある場合がございます。
最新情報につきましては、参考情報として記載しておりますドキュメントをご確認ください。
目次
ワークスペース ID
ワークスペース IDは、Microsoft Fabric のワークスペースに紐付けられたサービス プリンシパルです。マイ ワークスペースを除く任意のワークスペースの設定から作成することができ、作成すると Microsoft Entra ID 上にサービス プリンシパルが作成されます。ワークスペース ID に関連付けられた資格情報は Microsoft Fabric で自動的に管理するため、ユーザーが資格情報を覚えておく必要がなく、資格情報の漏洩や一時的な資格情報の無効によるダウンタイムを防ぐことができます。現在は、ADLS Gen2 のほか、SQL Server、Azure Analysis Services などで利用できます。データソースでワークスペース ID を用いた認証が利用できるかは、利用したいデータソースのコネクタのページをご確認ください。
参考#
ワークスペース ID - Microsoft Fabric | Microsoft Learn
Microsoft Fabric ワークスペース ID を使用して認証する - Microsoft Fabric | Microsoft Learn
すべての Power Query コネクタのリスト - Power Query | Microsoft Learn
ワークスペース ID の作成
ワークスペース ID を作成するための条件は以下のとおりです。
- 作成するユーザーのワークスペース ロールが ”管理者” である
- マイ ワークスペース以外のワークスペースである
それでは、具体的にワークスペース ID の作成方法をご紹介します。
- ワークスペースを開き、 [ワークスペースの設定] を選択します。
- [ワークスペース ID] タブを開き、 [+ ワークスペース ID] を選択します。
作成は以上で完了です。ワークスペース ID の詳細、許可されているユーザーの一覧の情報が表示されます。
Microsoft Entra ID を確認すると、ワークスペース名と同名のサービス プリンシパルが作成されていることが確認できます。
信頼されたワークスペース アクセス
信頼されたワークスペース アクセス機能は、作成したワークスペース ID を利用して ADLS Gen2 にアクセスできる機能です。 ADLS Gen2 でファイアウォールを有効にしている場合でも、ワークスペース ID を利用して認証を行うことができます。
利用できる条件は、以下のとおりです。
- ワークスペース が F SKU 容量上にあること
- 試用版容量ではないこと
また、現在使用できるのは、OneLake のショートカット、パイプライン、セマンティック モデル、T-SQL COPY ステートメント、および AzCopy のみです。
参考#
Microsoft Fabric での信頼されたワークスペース アクセス - Microsoft Fabric | Microsoft Learn
Private ADLS Gen2 access made easy with OneLake Shortcuts: a step-by-step guide | Microsoft Fabric Blog | Microsoft Fabric
信頼されたワークスペース アクセスの利用
信頼されたワークスペース アクセスの利用例として、ADLS Gen2 へのショートカットを作成します。
1.リソース インスタンス ルールの作成
ワークスペース ID を利用して ADLS Gen2 にアクセスするため、Fabric ワークスペースのリソース インスタンス ルールを作成します。ARM テンプレートをデプロイします。
参考# ARM テンプレートを使用したリソース インスタンス ルール
Azure Portal にアクセスし、[カスタム テンプレートのデプロイ] を選択します。
[エディターで独自のテンプレートを作成する] を選択します。
テンプレートには以下を利用します。
参考# 信頼されたワークスペース アクセス - ARM テンプレートのサンプル
1 | { |
それぞれの情報は、以下のように取得します。
storage account name / subscription id of storage account / resource group name / region
Azure Portal 上のストレージ アカウントの概要タブ
tenantid
Power BI を開き、[ヘルプとサポート] > [Power BI について] を選択して表示されたウインドウ内にある ”テナントの URL” に記載された ctid= 以降の英数字
workspace-id
ワークスペースを開き、表示された URL の groups/ から /list までに記載された英数字
入力ができたら保存して、デプロイします。
2.ワークスペース ID への ADLS Gen2 アクセス権の付与
アクセスに使用するワークスペース ID には、以下のアクセス権が必要です。
参考# 信頼されたワークスペース アクセス - ADLS Gen2 で信頼されたワークスペース アクセスを構成する (Prerequisites)
- ショートカットの認証に使用されるプリンシパルには、ストレージ アカウントに対する Azure RBAC ロールが必要です。 プリンシパルには、ストレージ アカウント スコープでのストレージ BLOB データ共同作成者、ストレージ BLOB データ所有者、またはストレージ BLOB データ閲覧者ロール、またはコンテナー内のフォルダー レベルでのアクセス権とともにストレージ アカウント スコープでのストレージ BLOB デリゲータのロールが必要です。 フォルダー レベルでのアクセスは、コンテナー レベルの RBAC ロールまたは特定のフォルダー レベルのアクセスを通じて提供できます。
Azure Portal からアクセスしたいストレージ アカウントを開き、[アクセス制御 (IAM)] > [ロールの割り当て] からアクセス権を設定していきます。
[+ 追加] を選択します。
今回はストレージ BLOB データ共同作成者を割り当てます。[次へ] を選択します。
[+ メンバーを選択する] を選択して、表示されたウインドウで作成したワークスペース ID を選択します。[レビューと割り当て] でロールを割り当てます。
3.ショートカットの作成
今回はレイクハウスにショートカットを作成します。
- レイクハウスを開き、Files を右クリック > [新しいショートカット] を選択します。
- [Azure Data Lake Storage Gen2] を選択します。
- 接続先のストレージ アカウントの URL を入力します。https://<ストレージ アカウント名>.dfs.core.windows.net/ です。[認証の種類] は ”ワークスペース ID” を選択します。
- 正しく設定がされていれば、ADLS Gen2 内のコンテナーが表示されます。ショートカットを作成したいコンテナーを選択します。[次へ] を選択します。
- [作成] を選択してショートカットを作成します。
レイクハウスから ADLS Gen2 へのショートカットが作成でき、コンテナー内に格納されたファイルを確認することができました。
おわりに
今回はワークスペース ID と信頼されたワークスペース アクセスについて紹介しました。利用できるアイテムは限られておりますが、ADLS Gen2 を利用するシナリオでは資格情報の管理の手間が少なく、より安全にアクセスできる方法です。ぜひご利用いただけますと幸いです。
以上、本ブログが少しでも皆さまのお役に立てますと幸いでございます。
※本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。