この記事では、Microsoft Fabric Extensibility Toolkit のアーキテクチャと、カスタム ワークロードを Fabric プラットフォームと統合する方法について説明します。 ここでは、ランタイム コンポーネント、Fabric フロントエンド、ワークロード、および Fabric サービス間のフロー、マニフェストと項目モデルが Fabric でワークロードをネイティブに感じるしくみについて説明します。
アーキテクチャ コンポーネント
ファブリック フロントエンド (ホスト)
ファブリック フロントエンドはホスト環境です。 ワークロードが iFrame としてレンダリングされ、セキュリティで保護されたホスト API が iFrame に公開されるため、分離された状態でワークロードが Fabric と対話できるようになります。 ホストは、マニフェスト (エントリ ポイント、ルート、および機能) に従ってワークロードをブートストラップし、Microsoft Entra ID を使用して認証トークンを管理し、ワークロードから Fabric パブリック API とプラットフォーム サービスへの呼び出しを仲介します。
ワークロードウェブアプリケーション
ワークロードは、クラウドでホストする Web アプリケーション (React や Angular など) です。 Fabric はそれを iFrame に読み込み、プラットフォームと統合するためのホスト API を提供します。 アプリは、マニフェストで宣言されたルートと UI サーフェスを実装し、Microsoft Entra ID トークン (ホストによって提供) を使用して Fabric パブリック API を呼び出し、必要に応じて独自のバックエンド サービスを呼び出し、Fabric UX ガイダンスに従ってネイティブ エクスペリエンスのように見え、動作します。
ファブリック サービスとパブリック API
Fabric サービスは、メタデータとコンテンツの読み取りと書き込み、項目の管理、プラットフォーム機能との統合のためのパブリック API を公開します。 ワークロードは、Microsoft Entra ID を介して発行されたスコープ付きトークンを使用してこれらの API を呼び出します。たとえば、アイテムの CRUD 操作とライフサイクル アクションの実行、 OneLake に格納されているデータとコンテンツへのアクセス、検索や検出などのワークスペース機能への参加などです。 エンドポイント、スコープ、ID のガイダンスについては、 Fabric パブリック REST API を参照してください。
Microsoft Entra (認証)
認証と承認は、Microsoft Entra ID によって処理されます。 ワークロードのマニフェストは、必要なアクセス許可を宣言します。Fabric ホストは適切なトークンを取得し、それらの宣言に従って同意とアクセスを強制します。
ワークロード モデルとマニフェスト
ワークロードは、ID、機能、ルート、UI エントリ ポイント、および必要なアクセス許可を記述するマニフェストによって定義されます。 マニフェストは、Web アプリと Fabric の間のコントラクトです。 スキーマ、例、および検証ガイダンスについては、「 マニフェストの概要」を参照してください。
アイテムと先住民の参加
ワークロードは通常、1 つ以上の項目の種類を提供します。 ワークロードによって作成された項目はワークスペースに表示され、ネイティブ Fabric 項目と同様に動作します。 共同作業と共有に参加し、検索で検出でき、ライフサイクルの操作とガバナンスに従い、CRUD 用の Fabric パブリック API を使用しながら OneLake 経由でデータを格納します。
エンド ツー エンド フロー
- ユーザーがワークスペースを開き、ワークロードによって提供される項目またはエントリ ポイントに移動します。
- Fabric フロントエンドは、マニフェストに基づいて iFrame に Web アプリケーションを読み込みます。
- ホストは、ワークロードに必要なスコープで Microsoft Entra トークンを取得し、ホスト API を iFrame に公開します。
- ワークロードは、これらのトークンを使用して Fabric パブリック API (および該当する場合は独自のサービス) を呼び出します。
- 項目データは OneLake に格納され、項目メタデータは Fabric API を介して管理されるため、他の Fabric アイテムと同様に動作します。
次のステップ
ローカルで開発し、ワークロードを発行するには、「 ワークロードを発行する」を参照してください。 マニフェスト スキーマとローカル開発ガイダンスについては、 マニフェストの概要、 DevServer、 DevGateway に関するページを参照してください。 API エンドポイント、スコープ、ID ガイダンスについては、 Fabric パブリック REST API を参照してください。