Verificatie voor Fabric-apps

Fabric Apps bevat een ingebouwde verificatieservice waarmee gebruikers worden aangemeld, hun sessies worden beheerd en hun identiteit wordt gekoppeld aan elke gegevens- en opslagoproep die uw app doet. In dit artikel worden de concepten uitgelegd die u moet begrijpen voordat u verificatie voor uw project configureert.

Zie voor meer informatie over de implementatie:

Verificatiemodi

Fabric Apps ondersteunt twee verificatiemethoden. De methode die u gebruikt, is afhankelijk van waar de app wordt uitgevoerd:

Environment Ondersteunde methode Wanneer gebruikt u het?
Lokale ontwikkeling E-mail en wachtwoord Snel itereren zonder afhankelijk te zijn van het Fabric-portal.
Uitgerold naar Fabric Fabric SSO (Microsoft Entra ID) Aanmelden voor productie voor alle gebruikers met toegang tot uw Fabric-werkruimte.

Sleutelbegrippen:

  • Fabric SSO meldt de gebruiker via de Fabric-portal aan met de bestaande Microsoft Entra ID van de gebruiker. Het werkt alleen wanneer de app wordt geopend vanuit Fabric, zodat u deze niet kunt gebruiken tijdens lokale ontwikkeling.
  • E-mail en wachtwoord zijn alleen bedoeld voor lokale ontwikkeling. Het werkt niet na de implementatie.
  • Bij de eerste aanmelding wordt de gebruiker ingericht. Met Fabric-SSO is er geen afzonderlijke registratiestap: gebruikersaccounts worden automatisch aangemaakt de eerste keer dat ze zich aanmelden.
  • Verificatie is vereist voor Fabric implementaties. Het instellen van services.auth.enabled op false veroorzaakt dat npx rayfin up mislukt.

Sessies en identiteit

Nadat een gebruiker zich heeft aangemeld, maakt de SDK een sessie die de aangemelde gebruiker vertegenwoordigt. Sessies zijn ondoorzichtig. Uw app moet de onderliggende tokens niet inspecteren. In plaats daarvan leest uw app een kleine set eigenschappen op hoog niveau:

  • Of een sessie momenteel is geverifieerd.
  • De id en email van de gebruiker.
  • Aangepaste claims die u hebt geconfigureerd in rayfin.yml.

Hetzelfde clientexemplaren waarmee de gebruiker wordt aangemeld, koppelt automatisch hun identiteit aan elke gegevens- en opslagaanroep. U geeft tokens niet handmatig door.

Sessies veroorzaken ook wijzigingsevenementen, zodat uw gebruikersinterface kan reageren wanneer een gebruiker zich aanmeldt of zich afmeldt zonder de pagina opnieuw te laden.

Verificatie inschakelen in uw project

Authenticatie is geconfigureerd in rayfin/rayfin.yml. In het volgende voorbeeld worden zowel Fabric SSO (voor geïmplementeerde apps) als aanmelding via e-mail/wachtwoord (voor lokale ontwikkeling) ingeschakeld:

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

Wat elke instelling bepaalt:

  • services.auth.enabled : hiermee schakelt u de verificatieservice in. Vereist voor elke Fabric-implementatie.
  • allowedRedirectUris – De origins waarnaar de gebruiker na het aanmelden mag worden doorgestuurd. Voeg hier uw lokale dev-URL toe. npx rayfin up voegt automatisch de geïmplementeerde app-oorsprong toe.
  • fabric.enabled – Schakelt Fabric SSO in. Vereist voor geïmplementeerde apps.
  • password.enabled – Hiermee schakelt u aanmelding via e-mail en wachtwoord in voor lokale ontwikkeling.

Important

Fabric implementaties vereisen dat verificatie is ingeschakeld. npx rayfin up mislukt wanneer services.auth.enabled is ingesteld op false.

Na het bewerken van rayfin.yml, herstart je de lokale backend of voer je npx rayfin up uit om de wijziging toe te passen.

Aangepaste claims

Met aangepaste claims kunt u toepassingsspecifieke metagegevens aan elke sessie koppelen, bijvoorbeeld een tenantnaam, een functievlag of een app-versie. Ze zijn handig voor op rollen gebaseerd toegangsbeheer en functie-gating zonder uw gegevensmodel te wijzigen.

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

Aangepaste claims verschijnen in het sessieobject en er kan vanuit uw machtigingsregels voor gegevens naar worden verwezen.

Wat de SDK biedt

Wanneer u de RayfinClient gebruikt, is de authenticatieservice beschikbaar op client.auth. Op conceptueel niveau biedt het:

  • Registreren en aanmelden met e-mail en wachtwoord tijdens lokale ontwikkeling.
  • Aanmeld- en aanmelding via Fabric SSO voor geïmplementeerde apps. Dezelfde aanroep verwerkt zowel nieuwe als terugkerende gebruikers.
  • Afmelden om de huidige sessie te beëindigen.
  • Sessielezingen en abonnementen zodat uw interface gesynchroniseerd blijft met de authenticatiestatus van de gebruiker.

Zie Configure Fabric SSO authentication for your Fabric app voor de code om dit in een echte app te integreren.