워크로드 매니페스트(WorkloadManifest.xml)는 워크로드에 대한 워크로드 수준 구성입니다. 호스트가 안전하게 부트스트랩할 수 있도록 워크로드가 누구인지 및 프런트 엔드에 도달하는 방법을 Fabric에 알려줍니다. 제품 및 항목 정의를 보완하지만 대체하지는 않습니다.
- 제품 메타데이터(검색 및 게시용)는 Product.json있습니다.
- 항목 유형 및 해당 동작은 항목 매니페스트 및 JSON 파일에 있습니다.
워크로드 매니페스트에서 정의하는 내용
- 워크로드 식별자:
WorkloadName([조직].[WorkloadId]) 및Version(시맨틱 버전) - 호스팅 모델:
HostingType(사용FERemote) - 프론트엔드 Microsoft Entra 앱:
AADFEApp>AppId - 프런트엔드 엔드포인트:
ServiceEndpoint항목과Name항목(예:Frontend),Url항목(개발 환경에서는 localhost 사용; 프로덕션 환경에서는 확인된 Entra 도메인의 하위 도메인이어야 함), 및IsEndpointResolutionService항목. 도메인 제한 에 대한 일반 게시 요구 사항을 참조하세요. - 선택적 샌드박스 이완:
EnableSandboxRelaxation특별한 iFrame 기능이 필요한 경우에만(예: 파일 다운로드 시작)
모범 사례
- 앱 및 매니페스트에서 버전 일관성 유지
- 필요한 최소 권한 선언(최소 권한 원칙)
- CI의 일부로 매니페스트를 유효성 검사하십시오.
구조
매니페스트의 주요 요소 및 의미:
- 스키마 버전(예:
SchemaVersion="2.0.0")이 있는 루트 요소입니다. -
Workload다음과 같은 특성이 있는 노드:-
WorkloadName— 형식[Organization].[WorkloadId]의 고유 식별자(예:Org.MyWorkload)입니다. 다른 테넌트에 게시하지 않으려는 경우,Org.[WorkloadId]를 사용할 수 있습니다. 테넌트 간에 게시하려면 Fabric에 전체 WorkloadName을 등록합니다. -
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에 등록합니다.
- DevServer: 패브릭에 정보를 제공하는 경우
- 관리 포털: 테스트 및 프로덕션의 경우 게시의 일부로 Fabric 관리 포털을 통해 매니페스트 패키지를 업로드합니다. 워크로드 게시를 참조하세요.