Qu’est-ce que Fabric Apps (préversion) ?

Fabric Apps (préversion) vous aide à créer des applications pilotées par les données sur Microsoft Fabric en combinant des modèles de données, des API générées, l’authentification et l’hébergement dans un flux de travail de développement. Vous définissez vos modèles de données dans TypeScript et Fabric Apps les utilise pour générer les éléments principaux dont votre application a besoin. Fabric Apps prend en charge TypeScript comme langage pour les modèles de données, le code client et la logique d’application.

Important

Cette fonctionnalité est en version préliminaire.

Fonctionnalités clés

Fabric Apps fournit ces fonctionnalités :

  • Modèles de données en API : décorez des classes TypeScript avec @entity(), @text(), @uuid()et d’autres décorateurs. Fabric Apps génère automatiquement des schémas de base de données et des points de terminaison GraphQL.
  • Clients de type sécurisé : le Kit de développement logiciel (SDK) client valide les requêtes et les mutations avant d’atteindre le serveur principal, en interceptant les erreurs pendant le développement.
  • Authentification intégrée : la gestion des sessions, la gestion des jetons et les flux d’authentification sont inclus. Configurez l’authentification unique Fabric pour les applications déployées, ou utilisez une adresse e-mail et un mot de passe lors du développement local.
  • Hébergement statique : générez et servez votre application front-end en même temps que vos API back-end avec une seule commande de déploiement.
  • Développement local : exécutez la pile complète localement avec Docker pour une itération rapide, puis déployez sur Microsoft Fabric lorsque vous êtes prêt pour la production. Créer la structure de projets, développer avec GitHub Copilot et déployer dans Fabric à l’aide de Rayfin CLI.

Prerequisites

Capacité du réseau

Votre espace de travail doit avoir une capacité Fabric attribuée. Lorsque vous créez un espace de travail, sélectionnez une capacité Fabric à y associer. Les services d’applications Fabric consomment des unités de capacité de la capacité qui leur est attribuée.

Paramètres d’administration du locataire

Un administrateur de locataire Fabric doit activer la charge de travail Fabric Apps avant que les utilisateurs puissent créer des éléments.

  1. Connectez-vous au portail d’administration Fabric.
  2. Accédez aux paramètres du locataire.
  3. Sous Fabric Apps (préversion), activez le paramètre sur Enabled.
  4. Choisissez s’il faut activer l’ensemble de l’organisation ou des groupes de sécurité spécifiques.
  5. Sélectionnez Appliquer.

La propagation des modifications peut prendre quelques minutes.

Fonctionnement

Une application Fabric s’exécute en tant que service managé dans Microsoft Fabric avec une suite de services qui définissent le serveur principal, comme l’hébergement d’applications, la base de données, les API GraphQL et l’authentification. Fabric gère l’hébergement, la mise en réseau et la mise à l’échelle. L’authentification utilise exclusivement Fabric SSO (authentification unique Microsoft Entra ID) — aucun autre fournisseur d’authentification n’est disponible après le déploiement.

Capture d’écran montrant le service géré de l’application Fabric et ses composants.

Lorsque vous déployez votre application avec rayfin up, Fabric crée des services enfants en fonction de votre configuration rayfin.yml. Ces services enfants apparaissent en tant qu’éléments enfants sous l’application Fabric dans le portail Fabric.

Service enfant Ce qu’il fournit Fonctionnalités du portail
Base de données SQL dans Fabric Une base de données SQL managée avec votre schéma appliqué à partir des décorateurs de modèle de données TypeScript. Affichez la base de données, exécutez des requêtes avec l’éditeur de requête, copiez chaîne de connexion. La base de données est en lecture seule dans le portail. Les modifications de schéma doivent provenir de votre code via rayfin up.
Authentication Authentification négociée de Fabric à l’aide de Microsoft Entra ID (SSO). Les utilisateurs se connectent via leur identité Fabric existante. Affichez les utilisateurs authentifiés dans la base de données SQL.
Contenu statique Vos ressources front-end compilées (HTML, CSS, JS), hébergées à une URL publique à l’aide du stockage OneLake. Afficher l’URL d’hébergement. Les ressources sont mises à jour sur chaque déploiement.

URL du back-end d’application

Chaque application Fabric dispose d’un point de terminaison unique qui fournit l’accès à tous les services :

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

Le point de terminaison expose un chemin d’accès pour chaque service :

Chemin Service
/api/graphql API de données (GraphQL) — utilisée par RayfinClient pour les opérations de lecture et d’écriture
/auth Service d’authentification
/storage Stockage Fichier

Gestion dans le portail Fabric

Après le déploiement, vous pouvez gérer votre application Fabric directement dans le portail Fabric.

Afficher les propriétés de l’élément

Ouvrez l’application Fabric dans le portail pour afficher :

  • URL du serveur principal de l’application : ce point de terminaison est utilisé pour tous les services principaux utilisés par l’application.
  • URL de l’application : URL publique où votre contenu statique est hébergé. Fabric SSO est requis pour accéder à l’application.

Gérer les éléments enfants

Sélectionnez l’application Fabric pour afficher ses services enfants :

  • base de données SQL dans Fabric : ouvre l’élément Fabric SQL Database pour afficher l’Explorateur d’objets. Vous pouvez exécuter des requêtes de lecture sur vos données. Les modifications de schéma doivent toujours être apportées dans le code du dossier rayfin/data. Les conflits de schéma peuvent se produire si le schéma est modifié directement dans la base de données SQL et peut interrompre l’application.

Permissions d’élément

Les rôles d’espace de travail ne remplacent pas les autorisations au niveau de l’élément. Pour partager une application avec une personne de votre organisation, elle a besoin d’une autorisation d’exécution et d’interaction (lecture et exécution) pour exécuter l’application et appeler les API principales.

Autorisation Ce qu’il autorise
Exécuter et interagir (par défaut) Ouvrez et utilisez l’application déployée. Tous les membres de l’espace de travail reçoivent ce niveau par défaut.
Modifier (écrire) Modifiez l’application Fabric : déployez du code avec rayfin up, appliquez des modifications de schéma, mettez à jour les paramètres et gérez les services enfants.
Repartager Accordez à d’autres utilisateurs l’accès à l’application Fabric. Nécessite un rôle d’administrateur sur l’espace de travail.

En savoir plus sur les rôles d’espace de travail.

Développement avec Rayfin CLI

L’interface CLI génère de nouveaux projets, lance l’infrastructure locale, synchronise les modifications de schéma et déploie sur Fabric. Installez-le avec npm create @microsoft/rayfin@latest.

Commandes clés :

Command Purpose
npm create @microsoft/rayfin@latest Créez un projet à partir d’un modèle.
npx rayfin up Déployez votre projet sur Fabric.
npx rayfin up db apply Appliquez les modifications de schéma de base de données.

Pour obtenir une référence de commande complète, consultez la référence CLI.

Décorateurs de modèle de données

Définissez des modèles de données à l’aide de décorateurs TypeScript :

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 analyse ces décorateurs et génère :

  • Définitions de table de base de données
  • Points de terminaison de l’API GraphQL
  • Règles d’autorisation au niveau des lignes
  • Méthodes clientes de type sécurisé

Quand utiliser Fabric Apps

Fabric Apps est idéal pour :

  • Prototypage rapide : passez de l’idée à l’URL dynamique en quelques minutes avec une infrastructure préconfigurée.
  • Outils internes et tableaux de bord – Créez des interfaces d’administration authentifiées sans écrire de code backend répétitif.
  • Exploration et visualisation des données – Interrogez les données Fabric via GraphQL et affichez-les dans des interfaces utilisateur personnalisées.
  • Applications IA et agent : fournissez des services back-end structurés pour les agents IA qui ont besoin d’un état persistant.

Fabric Apps peut ne pas convenir pour :

  • Les applications nécessitant des transactions ou des procédures stockées complexes en plusieurs étapes.
  • Applications nécessitant des fournisseurs d’authentification personnalisés autres que l’authentification unique de Fabric et l’e-mail/mot de passe.

Responsabilités en matière de sécurité

Fabric fournit : l’authentification unique Fabric (Microsoft Entra ID), la sécurité au niveau des lignes via les décorateurs @role, HTTPS, PKCE, ainsi que des autorisations au niveau de l’espace de travail et de l’élément.

Vous êtes responsable des opérations suivantes :

  • Conserver les secrets, les clés API et les données sensibles hors de votre code, ressources frontend et référentiel. Le contenu statique est servi à partir d’une URL publique.
  • Ce que votre application expose via Fabric SSO contrôle la connexion, puisque votre code détermine ce que les utilisateurs authentifiés voient et peuvent faire.
  • Accorder uniquement aux contributeurs les autorisations dont ils ont besoin pour déployer ou gérer l’application.
  • Responsabilité légale et de conformité pour les données que votre application collecte, traite et stocke.

Étapes suivantes