ワークロード マニフェスト (WorkloadManifest.xml) は、ワークロードのワークロード レベルの構成です。 Fabric に対してワークロードが誰であるかと、フロントエンドに到達するための方法を指示することで、ホストが安全にブートストラップできるようにします。 これは、製品と項目の定義を補完しますが、置き換えることはありません。
- 製品メタデータ (検出と公開用) は、Product.jsonに存在します。
- 項目の種類とその動作は、項目マニフェストと JSON ファイルに格納されます。
ワークロード マニフェストで定義される内容
- ワークロード ID:
WorkloadName([組織].[WorkloadId]) とVersion(セマンティック バージョン) - ホスティング モデル:
HostingType(FERemoteを使用) - フロントエンド Microsoft Entra アプリ:
AADFEApp>AppId - フロントエンド エンドポイント:
ServiceEndpointエントリには、Name(例:Frontend)、開発環境での localhost、実稼働のドメインは検証済みの Entra ドメインのサブドメインである必要があります)、およびUrlを含めます。 ドメインの制限については、「 一般的な公開要件 」を参照してください。 - オプションのサンドボックスの緩和: 特別な iFrame 機能が必要な場合にのみ
EnableSandboxRelaxation(ファイルのダウンロードの開始など)
ベスト プラクティス
- アプリとマニフェスト全体でバージョンの整合性を維持する
- 必要な最小限のアクセス許可を宣言する (最小限の特権の原則)
- CI の一部としてマニフェストを検証する
構造
マニフェストの重要な要素とその意味:
- スキーマ バージョン (たとえば、
SchemaVersion="2.0.0") を持つルート要素。 -
Workload次のような属性を持つノード:-
WorkloadName—[Organization].[WorkloadId]形式の一意識別子 (たとえば、Org.MyWorkload)。 他のテナントに発行しない場合は、Org.[WorkloadId]を使用できます。 テナント間で発行する場合は、完全な WorkloadName を Fabric に登録します。 -
HostingType— ワークロードのホスティングを示します。FERemoteを使用します。
-
-
Versionnode — ワークロード パッケージのセマンティック バージョン。 -
RemoteServiceConfiguration>CloudServiceConfigurationを含む:-
Cloud(たとえば、Public)。 -
AADFEApp>AppId— フロントエンドの Microsoft Entra アプリケーション ID が含まれています。 -
EnableSandboxRelaxation— 特別な iFrame 機能が必要な場合 (ファイルのダウンロードの開始など) をtrueに設定します。 セキュリティを確保するために、既定でfalseを維持します。 -
Endpoints>ServiceEndpointに関連するエントリ。-
Name(たとえば、Frontend)。 -
Urlフロントエンドがホストされている場所。 開発にはhttps://localhost:portを使用します。 運用環境では、ドメインは検証済みの Entra ドメインのサブドメインである必要があります。 ドメインの完全な制限については、「 一般的な公開要件」 を参照してください。 -
IsEndpointResolutionService。
-
-
出力とプレースホルダーをビルドする
Starter-Kit で、環境ファイルの構成に基づいてマニフェストが作成されるたびにプレースホルダーを設定します。 最終的に完成したマニフェストは、 build/Manifest ディレクトリに作成されます。 プレースホルダーを使用して環境からプレースホルダーを設定すると、ファイルやスクリプトを変更せずに異なる環境を構築できます。 ビルド出力は次の方法で使用されます。
- DevGateway: 開発時にアプリが Fabric ポータル内に読み込まれるように、ローカル開発インスタンスを Fabric に登録します。
- DevServer: Fabric に情報を提供する
- 管理ポータル: テストと運用のために、発行の一環として Fabric 管理ポータルからマニフェスト パッケージをアップロードします。 ワークロードの発行を参照してください。