この記事では、Power BI 読み取り専用管理 API と Fabric 更新管理 API でサービス プリンシパル認証を有効にする方法について説明します。
サービス プリンシパルは、Microsoft Entra アプリケーションがコンテンツと API Fabricアクセスできるようにするために使用できる認証方法です。 Microsoft Entra アプリを作成すると、プロセスによってサービス プリンシパル オブジェクトが作成されます。 単にサービス プリンシパルとも呼ばれるサービス プリンシパル オブジェクトを使用すると、Microsoft Entra IDでアプリを認証できます。 認証されると、アプリはテナント リソースMicrosoft Entraアクセスできます。
その一例が、AI 向けの Microsoft Purview データ セキュリティ態勢管理 (DSPM) でメタデータ スキャンと Fabric のデータ リスク評価を実行するアプリです。 このアプリでは、サービス プリンシパル認証を使用して、Fabric管理者 API にアクセスします。 このアプリは、フェデレーション資格情報 (推奨) またはクライアント シークレットで認証するように構成します。
サービス プリンシパル認証を有効にする
Fabric API のサービス プリンシパル認証を有効にするには、次の手順に従います。
Microsoft Entra アプリを作成します。 使用するMicrosoft Entra アプリが既にある場合は、この手順をスキップできます。 後の手順で必要なアプリ ID を書き留めます。
Important
使用するアプリに、Azure ポータルで Fabric に対して管理者の同意が必要なアクセス許可が設定されていないことを確認します。 アプリにそのようなアクセス許可があるかどうかを確認する方法について説明します。
新しい Microsoft Entra Security Group を作成し、グループの種類として Security を選択します。 使用するMicrosoft Entraセキュリティ グループが既にある場合は、この手順をスキップできます。
作成したセキュリティ グループのメンバーとしてアプリ ID を追加します。 これを行うには、次の手順を実行します。
Azure portal > Microsoft Entra ID > Groups に移動し、Step 2 で作成したセキュリティ グループを選択します。
- [ メンバーの追加] を選択します。
Fabric 管理者設定を有効にします。
Fabric 管理ポータルにサインインします。 テナント設定ページを表示するには、ファブリック管理者である必要があります。
[ 管理 API の設定] で、有効にする管理者 API の種類のスイッチを選択します。
- サービスプリンシパルは、読み取り専用の管理 API にアクセスすることができます (サポートされている Power BI 管理 API を参照)
- サービス プリンシパルは、更新プログラムに使用される管理者 API にアクセスできます ( サポートされている Fabric 管理者 API を参照)
Note
これらの設定は、MICROSOFT PURVIEW DSPM for AI でFabricデータ リスク評価を実行するために必要です。 詳細については、AI に 関する考慮事項について DSPM を参照してください。
トグルを [有効] に設定します。
[ 特定のセキュリティ グループ ] ラジオ ボタンを選択します。 その下に表示されるテキスト フィールドに、 手順 2 で作成したセキュリティ グループを追加します。
を選択してを適用します。
読み取り専用でサポートされているPower BI管理 API
次の読み取り専用管理者 API では、サービス プリンシパル認証がサポートされています。 このリストは完全なものではありません。ここに記載されていない API の最新情報については、Power BI REST API のドキュメントを参照してください。
- Apps GetAppsAsAdmin
- Apps GetAppUsersAsAdmin
- Dashboards GetDashboardsAsAdmin
- ダッシュボード GetDashboardsInGroupAsAdmin
- ダッシュボード 管理者としてダッシュボードの購読を取得する
- ダッシュボード 管理者としてダッシュボードユーザーを取得
- ダッシュボード GetTilesAsAdmin
- Dataflows ExportDataflowAsAdmin
- Dataflows GetDataflowDatasourcesAsAdmin
- Dataflows GetDataflowsAsAdmin
- Dataflows GetDataflowsInGroupAsAdmin
- Dataflows GetDataflowUsersAsAdmin
- Dataflows GetUpstreamDataflowsInGroupAsAdmin
- Datasets GetDatasetsAsAdmin
- Datasets GetDatasetsInGroupAsAdmin
- Datasets GetDatasetToDataflowsLinksInGroupAsAdmin
- データセット GetDatasetUsersAsAdmin
- データセット 管理者としてデータ ソースを取得
- アクティビティ イベントを取得する
- 管理者として容量を取得する
- Power BI の暗号化キーを取得
- 容量の更新可能な状態を取得する
- 容量の更新可能なリソースを取得する
- リフレッシュ可能なアイテムを取得する
- Groups GetGroupAsAdmin
- グループを管理者として取得
- Groups GetGroupUsersAsAdmin
- グループ GetUnusedArtifactsAsAdmin
- GetImportsAsAdmin をインポートします
- Pipelines GetPipelinesAsAdmin
- Pipelines GetPipelineUsersAsAdmin
- Profiles GetProfilesAsAdmin
- レポート GetReportsAsAdmin
- レポート GetReportsInGroupAsAdmin
- レポート GetReportSubscriptionsAsAdmin
- レポート GetReportUsersAsAdmin 関数
- ユーザー GetUserArtifactAccessAsAdmin(管理者としてアーティファクトアクセスを取得)
- ユーザー GetUserSubscriptionsAsAdmin
- 広く共有されたアーティファクト 全組織に共有されたリンク
- 広く共有されている成果物 Web に公開済み
- WorkspaceInfo GetModifiedWorkspaces
- WorkspaceInfo GetScanResult
- WorkspaceInfo GetScanStatus
- WorkspaceInfo PostWorkspaceInfo
アプリに管理者の同意が必要なアクセス許可があるかどうかを確認する方法
Power BI の読み取り専用管理 API を呼び出すサービス プリンシパル認証を使用するアプリには、Azure ポータルで管理者の同意が必要なアクセス許可を設定してはいけません。 割り当てられたアクセス許可を確認するには:
Azure ポータルにサインインします。
Microsoft Entra ID、Enterprise アプリケーションを選択します。
Power BIへのアクセスを許可するアプリケーションを選択します。
[アクセス許可] を選択します。 アプリには、管理者の同意が必要な「アプリケーション」タイプのアクセス許可を登録してはなりません。
更新プログラムでサポートされている Fabric 管理者 API
サービス プリンシパルは、更新設定に使用される管理者 API にアクセスできます。これは、ワークスペース - ワークスペースの復元 API などの Fabric 管理者 API に適用されます。
特定の Fabric 管理者 API がサービス プリンシパル認証をサポートしているかどうかを確認するには、 Fabric REST API リファレンスの API のドキュメントを確認してください。 サービスプリンシパル認証がサポートされているかどうかを示す "Microsoft Entra によってサポートされている ID" セクションを探してください。
考慮事項と制限事項
サービス プリンシパルは REST API 呼び出しを行うことができますが、サービス プリンシパルの資格情報を使用してFabricを開くことはありません。
Fabric 管理ポータルの管理 API 設定でサービス プリンシパルを有効にするには、ファブリック管理者権限が必要です。