Wat is Fabric Apps (Preview)?

Fabric Apps (preview) helpt u bij het bouwen van gegevensgestuurde toepassingen op Microsoft Fabric door gegevensmodellen, gegenereerde API's, verificatie en hosting in één ontwikkelwerkstroom te combineren. U definieert uw gegevensmodellen in TypeScript en Fabric Apps deze gebruikt om de back-endonderdelen te genereren die uw app nodig heeft. Fabric Apps ondersteunt TypeScript als taal voor gegevensmodellen, clientcode en toepassingslogica.

Important

Deze functie is beschikbaar als preview-versie.

Belangrijkste kenmerken

Fabric Apps biedt deze mogelijkheden:

  • Gegevensmodellen voor API's : TypeScript-klassen versieren met @entity(), @text()en @uuid()andere decorators. Fabric Apps genereert automatisch databaseschema's en GraphQL-eindpunten.
  • Typeveilige clients – de client-SDK valideert query’s en mutaties voordat ze de back-end bereiken, waardoor fouten al tijdens de ontwikkeling worden opgevangen.
  • Ingebouwde verificatie : sessiebeheer, verwerking van tokens en verificatiestromen zijn opgenomen. Configureer Fabric SSO voor geïmplementeerde toepassingen of gebruik een e-mailadres en wachtwoord tijdens lokale ontwikkeling.
  • Statische hosting : bouw en serveer uw front-endtoepassing naast uw back-end-API's met één implementatieopdracht.
  • Lokale ontwikkeling : voer de volledige stack lokaal uit met Docker voor snelle iteratie en implementeer vervolgens naar Microsoft Fabric wanneer deze gereed is voor productie. Scaffold-projecten, ontwikkelen met GitHub Copilot en implementeren in Fabric met behulp van Rayfin CLI.

Prerequisites

Fabriccapaciteit

Aan uw werkruimte moet Fabric capaciteit zijn toegewezen. Wanneer u een nieuwe werkruimte maakt, selecteert u een Fabric-capaciteit waaraan u deze koppelt. Fabric Apps-services verbruiken capaciteitseenheden van de toegewezen capaciteit.

Tenantbeheerdersinstellingen

Een Fabric tenantbeheerder moet de workload Fabric Apps inschakelen voordat gebruikers items kunnen maken.

  1. Meld u aan bij de Fabric-beheerportal.
  2. Navigeer naar Tenantinstellingen.
  3. Schakel onder Fabric Apps (preview) de instelling in op Enabled.
  4. Kies of u wilt inschakelen voor de hele organisatie of specifieke beveiligingsgroepen.
  5. Selecteer de optie Toepassen.

Het kan enkele minuten duren voordat wijzigingen zijn doorgevoerd.

Hoe werkt het?

Een Fabric-app wordt uitgevoerd als een beheerde service in Microsoft Fabric met services die de back-end definiëren, zoals het hosten van apps, databases, GraphQL-API's en verificatie. Fabric beheert de hosting, netwerken en schalen. Verificatie maakt uitsluitend gebruik van Fabric SSO (Microsoft Entra ID eenmalige aanmelding). Er zijn na de implementatie geen andere verificatieproviders beschikbaar.

Schermafbeelding van de Fabric-app, beheerde service en onderdelen.

Wanneer u uw toepassing implementeert met rayfin up, maakt Fabric onderliggende services op basis van uw rayfin.yml-configuratie. Deze onderliggende services worden in de Fabric-portal weergegeven als onderliggende items onder de Fabric-app.

Onderliggende service Wat het biedt Portalmogelijkheden
SQL-database in Fabric Een beheerde SQL-database met je schema, toegepast vanuit decorators in het TypeScript-datamodel. Database weergeven, query's uitvoeren met de queryeditor, verbindingsreeks kopiëren. De database is alleen-lezen in de portal. Schemawijzigingen moeten afkomstig zijn van uw code via rayfin up.
Authentication Fabric-bemiddelde verificatie met Microsoft Entra ID (SSO). Gebruikers melden zich aan via hun bestaande Fabric identiteit. Geverifieerde gebruikers weergeven in de SQL-database.
Statische inhoud Uw ingebouwde front-endassets (HTML, CSS, JS) worden geleverd op een openbare URL met behulp van OneLake-opslag. Hosting-URL weergeven. Assets worden bijgewerkt voor elke implementatie.

Backend-URL van app

Elke Fabric-app heeft één eindpunt dat toegang biedt tot alle services:

https://<your-app>-app.rayfin.windows.net/

Het eindpunt toont een pad voor elke service:

Path Dienst
/api/graphql Gegevens-API (GraphQL) - gebruikt voor RayfinClient lees- en schrijfbewerkingen
/auth Verificatieservice
/storage Bestandsopslag

Beheer in de Fabric-portal

Na de implementatie kunt u uw Fabric-app rechtstreeks in de Fabric-portal beheren.

Itemeigenschappen weergeven

Open de Fabric-app in de portal om het volgende te zien:

  • URL van app-back-end : dit eindpunt wordt gebruikt voor alle back-endservices die door de toepassing worden gebruikt.
  • App-URL : de openbare URL waar uw statische inhoud wordt gehost. Fabric Single Sign-On is vereist om toegang te krijgen tot de app.

Onderliggende items beheren

Selecteer de Fabric-app om de onderliggende services te bekijken:

  • SQL-database in Fabric: hiermee opent u het Fabric SQL Database-item om de objectverkenner weer te geven. U kunt leesquery's uitvoeren op uw gegevens. Schemawijzigingen moeten altijd worden aangebracht in de code onder rayfin/data map. Schemaconflicten kunnen optreden als het schema rechtstreeks in de SQL Database wordt gewijzigd, waardoor de app mogelijk niet meer werkt.

Itemtoegang

Werkruimterollen vervangen geen machtigingen op itemniveau. Als ze een app willen delen met iemand in uw organisatie, hebben ze de machtiging Uitvoeren en communiceren (lezen en uitvoeren) nodig om de app uit te voeren en de back-end-API's aan te roepen.

Toestemming Wat het toestaat
Uitvoeren en communiceren (standaard) Open en gebruik de geïmplementeerde toepassing. Alle leden van de werkruimte ontvangen dit niveau standaard.
Bewerken (schrijven) Wijzig de Fabric-app: implementeer code met rayfin up, pas schemawijzigingen toe, update-instellingen en beheer onderliggende services.
Opnieuw delen Andere gebruikers toegang verlenen tot de Fabric-app. Hiervoor is de beheerdersrol in de werkruimte vereist.

Meer informatie over werkruimterollen.

Ontwikkeling met Rayfin CLI

De CLI zet nieuwe projecten op, start lokale infrastructuur op, synchroniseert schemawijzigingen en rolt uit naar Fabric. Installeer het met npm create @microsoft/rayfin@latest.

Sleutelopdrachten:

Opdracht Purpose
npm create @microsoft/rayfin@latest Maak een nieuw project op basis van een sjabloon.
npx rayfin up Implementeer uw project in Fabric.
npx rayfin up db apply Wijzigingen in databaseschema's toepassen.

Zie CLI-naslaginformatie voor een volledige opdrachtreferentie.

Decorators voor gegevensmodellen

Gegevensmodellen definiëren met Behulp van TypeScript-decorators:

import {
  entity,
  role,
  text,
  boolean,
  date,
  uuid,
} from '@microsoft/rayfin-core';

@entity()
@role('authenticated', '*', {
  policy: (claims, item) => claims.sub.eq(item.user_id),
})
export class Todo {
  @uuid() id!: string;
  @text({ min: 1, max: 100 }) title!: string;
  @boolean() isCompleted!: boolean;
  @date() createdAt!: Date;
  @date({ optional: true }) dueDate?: Date;
  @text() user_id!: string;
}

Fabric Apps analyseert deze decoratoren en genereert:

  • Definities van databasetabellen
  • GraphQL API-eindpunten
  • Autorisatieregels op rijniveau
  • Typeveilige clientmethoden

Wanneer gebruikt u Fabric Apps

Fabric Apps is ideaal voor:

  • Snelle prototypen : ga in enkele minuten van idee naar live-URL met vooraf geconfigureerde infrastructuur.
  • Interne hulpprogramma's en dashboards : geverifieerde beheerinterfaces bouwen zonder back-end standaard te schrijven.
  • Gegevensverkenning en -visualisatie : query's uitvoeren op Fabric gegevens via GraphQL en deze weergeven in aangepaste front-ends.
  • AI- en agenttoepassingen : bieden gestructureerde back-endservices voor AI-agents die permanente status nodig hebben.

Fabric Apps zijn mogelijk niet geschikt voor:

  • Toepassingen waarvoor complexe transacties met meerdere stappen of opgeslagen procedures vereist zijn.
  • Apps waarvoor aangepaste verificatieproviders nodig zijn, buiten Fabric SSO en e-mailadres/wachtwoord.

Beveiligingsverantwoordelijkheden

Fabric biedt: Fabric Single Sign-On (Microsoft Entra ID), beveiliging op rijniveau via @role decorators, HTTPS, PKCE en machtigingen op werkruimte- en itemniveau.

U bent verantwoordelijk voor:

  • Geheimen, API-sleutels en gevoelige gegevens uit uw code, frontend-assets en repository houden. Statische inhoud wordt geleverd vanuit een openbare URL.
  • Wat uw app via Fabric SSO beschikbaar stelt, bepaalt het aanmelden, omdat uw code bepaalt wat geverifieerde gebruikers zien en doen.
  • Contributors alleen de machtigingen geven die ze nodig hebben om de app te implementeren of te beheren.
  • Juridische en nalevingsverantwoordelijkheid voor de gegevens die uw app verzamelt, verwerkt en opslaat.

Volgende stappen