Autentificering for Fabric-apps

Fabric Apps inkluderer en indbygget autentificeringstjeneste, der logger brugere ind, administrerer deres sessioner og knytter deres identitet til hvert data- og lagringsopkald, din app foretager. Denne artikel forklarer de koncepter, du skal forstå, før du konfigurerer autentificering til dit projekt.

For implementeringsdetaljer, se:

Godkendelsestilstande

Fabric Apps understøtter to autentificeringsmetoder. Metoden du bruger afhænger af, hvor appen kører:

Miljø Understøttet metode Hvornår skal du bruge den?
Lokal udvikling E-mail og adgangskode Iterer hurtigt uden at være afhængig af Fabric-portalen.
Udsendt til Fabric Fabric SSO (Microsoft Entra ID) Produktionslogin-ind for enhver bruger med adgang til dit Fabric-arbejdsområde.

Nøglebegreber:

  • Fabric SSO logger brugeren ind via Fabric-portalen ved at bruge deres eksisterende Microsoft Entra ID-identitet. Det virker kun, når appen åbnes fra Fabric, så du kan ikke bruge den under lokal udvikling.
  • E-mail og adgangskode er kun beregnet til lokal udvikling. Den fungerer ikke efter udrulning.
  • Første gang login giver brugeren adgang. Med Fabric SSO er der ikke noget separat tilmeldingstrin – brugerne oprettes automatisk første gang, de logger ind.
  • Autentificering er påkrævet for Fabric-implementeringer. At sætte services.auth.enabled til false årsager npx rayfin up til at fejle.

Sessioner og identitet

Efter en bruger har logget ind, opretter SDK'en en session , der repræsenterer den indloggede bruger. Sessioner er uigennemsigtige—din app bør ikke inspicere de underliggende tokens. I stedet læser din app et lille sæt overordnede egenskaber:

  • Om en session aktuelt er autentificeret.
  • Brugerens id og email.
  • Brugerdefinerede krav om, at du har konfigureret i rayfin.yml.

Den samme klientinstans, der logger brugeren ind, knytter automatisk deres identitet til hvert data- og lagringskald. Du sender ikke tokens rundt manuelt.

Sessioner skaber også ændringsbegivenheder, så dit brugerflade kan reagere, når en bruger logger ind eller ud, uden at genindlæse siden.

Aktiver autentificering i dit projekt

Autentificering konfigureres i rayfin/rayfin.yml. Følgende eksempel muliggør både Fabric SSO (for deployerede apps) og e-mail/adgangskode-login (til lokal udvikling):

services:
  auth:
    enabled: true
    allowedRedirectUris:
      - http://localhost:5173
    fabric:
      enabled: true
    password:
      enabled: true  # Local development only

Hvad hver indstilling styrer:

  • services.auth.enabled – Tænder autentificeringstjenesten. Påkrævet ved enhver Fabric-udsendelse.
  • allowedRedirectUris – De oprindelser, der må modtage brugeren efter login. Tilføj din lokale udvikler-URL her. npx rayfin up Tilføjer automatisk den deployerede app-oprindelse.
  • fabric.enabled – Aktiverer Fabric SSO. Påkrævet for deployerede apps.
  • password.enabled – Muliggør e-mail og adgangskode-login til lokal udvikling.

Vigtig

Fabric-udrulninger kræver, at autentificering er aktiveret. npx rayfin up fejler når services.auth.enabled er sat til false.

Efter redigering rayfin.ymlgenstart den lokale backend eller kør npx rayfin up for at anvende ændringen.

Toldkrav

Brugerdefinerede krav lader dig vedhæfte applikationsspecifikke metadata til hver session—for eksempel et lejernavn, et funktionsflag eller en app-version. De er nyttige til rollebaseret adgangskontrol og feature gating uden at ændre din datamodel.

services:
  auth:
    enabled: true
    customClaims:
      tenant: default
      app_version: 1.0.0

Brugerdefinerede krav vises inde i sessionsobjektet og kan refereres fra dine datatilladelsesregler.

Hvad SDK'en tilbyder

Når du bruger RayfinClient, er autentificeringstjenesten tilgængelig på client.auth. På et konceptuelt niveau giver det:

  • Tilmeld dig og log ind med e-mail og adgangskode under lokal udvikling.
  • Login og tilmelding gennem Fabric SSO for deployerede apps. Det samme opkald håndterer både nye og tilbagevendende brugere.
  • Log ud for at afslutte den nuværende session.
  • Sessionlæsninger og abonnementer , så dit UI forbliver synkroniseret med brugerens autentificeringstilstand.

For koden, der forbinder disse til en rigtig app, se Konfigurér Fabric SSO-autentificering for din Fabric-app.