この記事では、 Power BI の読み取り専用 管理 API とMicrosoft Fabric 更新 管理 API のサービス プリンシパル認証を有効にする方法について説明します。
サービス プリンシパルは、Microsoft Entra アプリケーションが Microsoft Fabric のコンテンツと API にアクセスできるようにするために使用できる認証方法です。
Microsoft Entra アプリを作成すると、 サービス プリンシパル オブジェクト が作成されます。 単にサービス プリンシパルとも呼ばれるサービス プリンシパル オブジェクトを使用すると、Microsoft Entra ID でアプリを認証できます。 認証されると、アプリは Microsoft Entra テナント リソースにアクセスできます。
サービス プリンシパル認証を有効にする
Fabric API のサービス プリンシパル認証を有効にするには、次の手順に従います。
Microsoft Entra アプリを作成します。 使用する Microsoft Entra アプリが既にある場合は、この手順をスキップできます。 後の手順で必要なアプリ ID を書き留めます。
Important
使用するアプリに、Azure portal で Fabric に対して管理者の同意が必要なアクセス許可が設定されていないことを確認します。 アプリにそのようなアクセス許可があるかどうかを確認する方法について説明します。
新しい Microsoft Entra セキュリティ グループ を作成し、グループの種類として [セキュリティ ] を選択してください。 使用する Microsoft Entra セキュリティ グループが既にある場合は、この手順をスキップできます。
作成したセキュリティ グループのメンバーとしてアプリ ID を追加します。 これを行うには、次の手順を実行します。
- Microsoft Entra ID > グループ> Azure portal に移動し、手順 2 で作成したセキュリティ グループを選択します。
- [ メンバーの追加] を選択します。
Fabric 管理者設定を有効にします。
- Fabric 管理ポータルにサインインします。 テナント設定ページを表示するには、ファブリック管理者である必要があります。
- [ 管理 API の設定] で、有効にする管理者 API の種類のスイッチを選択します。
- サービス プリンシパルは読み取り専用の管理 API にアクセスできます ( サポートされている Power BI 管理者 API を参照)
- サービス プリンシパルは、更新プログラムに使用される管理者 API にアクセスできます ( サポートされている Fabric 管理者 API を参照)
トグルを [有効] に設定します。
[ 特定のセキュリティ グループ ] ラジオ ボタンを選択します。 その下に表示されるテキスト フィールドに、 手順 2 で作成したセキュリティ グループを追加します。
を選択してを適用します。
読み取り専用でサポートされている Power BI 管理者 API
サービス プリンシパル認証は、現在、次の読み取り専用管理 API でサポートされています。
- GetGroupsAsAdmin の $expand を使用して、ダッシュボード、セマンティックモデル、レポート、データフローを操作します。
- GetGroupUsersAsAdmin
- GetDashboardsAsAdmin の $expand タイル付き
- ダッシュボードユーザーを管理者として取得
- GetAppsAsAdmin
- GetAppUsersAsAdmin
- GetDatasourcesAsAdmin
- GetDatasetToDataflowsLinksAsAdmin
- GetDataflowDatasourcesAsAdmin
- GetDataflowUpstreamDataflowsAsAdmin
- GetCapacitiesAsAdmin
- GetCapacityUsersAsAdmin(管理者としてユーザーの容量を取得)
- GetActivityLog
- GetModifiedWorkspaces
- WorkspaceGetInfo
- WorkspaceScanStatus
- WorkspaceScanResult
- GetDashboardsInGroupAsAdmin
- GetTilesAsAdmin
- ExportDataflowAsAdmin
- GetDataflowsAsAdmin
- GetDataflowUsersAsAdmin
- GetDataflowsInGroupAsAdmin
- GetDatasetsAsAdmin
- GetDatasetUsersAsAdmin
- GetDatasetsInGroupAsAdmin
- Power BI 暗号化キーを取得する
- 容量の更新可能な状態を取得する
- リフレッシュ可能なアイテムを取得する
- 容量の更新可能なリソースを取得する
- 管理者としてインポートを取得
- GetReportsAsAdmin
- GetReportUsersAsAdmin
- GetReportsInGroupAsAdmin
アプリに管理者の同意が必要なアクセス許可があるかどうかを確認する方法
読み取り専用管理 API を呼び出すサービス プリンシパル認証を使用するアプリは、Azure portal で Power BI に対して管理者の同意が必要なアクセス許可を設定 してはなりません 。 割り当てられたアクセス許可を確認するには:
Azure portal にサインインします。
[Microsoft Entra ID]、[エンタープライズ アプリケーション] の順に選択します。
Power BI へのアクセスを許可するアプリケーションを選択します。
[アクセス許可] を選択します。 アプリには、管理者の同意が必要な「アプリケーション」タイプのアクセス許可を登録してはなりません。
更新プログラムでサポートされている Fabric 管理者 API
サービス プリンシパルは、更新設定に使用される管理者 API にアクセスできます。これは、ワークスペース - ワークスペースの復元 API などの Fabric 管理者 API に適用されます。
特定の Fabric 管理者 API がサービス プリンシパル認証をサポートしているかどうかを確認するには、Microsoft Fabric REST API リファレンスの API のドキュメントを確認してください。 サービス プリンシパル認証がサポートされているかどうかを示す "Microsoft Entra でサポートされている ID" セクションを探します。
考慮事項と制限事項
サービス プリンシパルは REST API 呼び出しを行うことができますが、サービス プリンシパルの資格情報を使用して Fabric を開くことはありません。
Fabric 管理ポータルの管理 API 設定でサービス プリンシパルを有効にするには、ファブリック管理者権限が必要です。