Tunnistautuminen Fabric-sovelluksille

Fabric Apps sisältää sisäänrakennetun todennuspalvelun, joka kirjautuu sisään, hallinnoi heidän istuntojaan ja liittää heidän henkilöllisyytensä jokaiseen sovelluksesi data- ja tallennuskutsuun. Tämä artikkeli selittää käsitteet, jotka sinun tulee ymmärtää ennen kuin määrität todennuksen projektiisi.

Toteutuksen yksityiskohdista katso:

Todennustilat

Käyttöönotetut Fabric-sovellukset autentikoituvat Microsoft Entra ID:llä. Valitse integraatiopolku sen mukaan, missä sovellus toimii ja kuka hankkii Entra-tokenin:

Ympäristö Tuettu menetelmä Milloin sitä kannattaa käyttää
Selainsovellus, joka käyttää Fabric-portaalia Fabric SSO -ponnahdusikkuna tai upotettu siirto Anna Fabric suorittaa interaktiivisen kirjautumisen tai kirjautua sisään sovellukseen, joka on upotettu Fabric:iin.
Selain tai Node.js-sovellus, jolla on jo delegoitu Entra-token signInWithEntraToken() Exchange annettu token Rayfin-istuntoon ilman ponnahdusikkunaa tai uudelleenohjausta.
Sovellus, joka on upotettu ulkoiseen emoportaaliin createEmbedHost() Vanhemmassa ja initEmbeddedAuth() i-kehyksessä Anna luotetun Entra-tunnistaman emovälittäjän siirtää siirto ilman, että sen tokeni lähetetään iframeen.
Paikallinen kehitys paikallisella taustalla Sähköposti ja salasana Testaa paikallista taustajärjestelmää vastaan; tämä menetelmä ei toimi käytössä olevassa Fabric-taustajärjestelmässä.

Avainkäsitteet:

  • Fabric SSO käyttää Fabric-portaalia selaimen käyttäjän todentamiseen. Sovellus voi toimia Fabric-sovelluksessa tai käyttää ponnahdusikkunaa itsenäiseltä sivulta, mukaan lukien paikallinen käyttöliittymä, joka kohdistuu käyttöön otettuun taustajärjestelmään.
  • Suora Entra-vaihto ja ulkoisen vanhemman ja isännän siirto ovat Microsoft Entra:n lisäpolkuja, eivät tue mielivaltaisia identiteettipalveluntarjoajia tai sovelluspohjaista palvelupäähenkilön kirjautumista.
  • Sähköposti ja salasana on tarkoitettu vain paikalliseen kehitykseen. Se ei toimi käyttöönoton jälkeen.
  • Ensimmäinen kirjautuminen mahdollistaa käyttäjän. Fabric SSO:ssa ei ole erillistä rekisteröitymisvaihetta – käyttäjät luodaan automaattisesti ensimmäisellä kirjautumiskerralla.
  • Fabric-käyttöönottoon vaaditaan tunnistautuminen. Asettaminen services.auth.enabled syyt falsenpx rayfin up epäonnistumaan.

Token-vaatimuksia ja toteutusesimerkkejä varten katso Direct Entra token -kirjautuminen ja Upotus ulkoiseen emoportaaliin.

Istunnot ja identiteetti

Kun käyttäjä kirjautuu sisään, SDK luo istunnon , joka edustaa kirjautunutta käyttäjää. Istunnot ovat läpinäkymättömiä—sovelluksesi ei pitäisi tarkastaa taustalla olevia tokeneita. Sen sijaan sovelluksesi lukee pienen joukon korkean tason ominaisuuksia:

  • Onko istunto tällä hetkellä autentikoitu.
  • Käyttäjän id ja email.
  • Mukautetut väitteet, jotka konfiguroit .rayfin.yml

Sama asiakasinstanssi, joka kirjautuu käyttäjän sisään, liittää automaattisesti hänen identiteettinsä jokaiseen dataan ja tallennuskutsuun. Et jaa tokeneita manuaalisesti.

Istunnot myös nostavat muutostapahtumia, joten käyttöliittymäsi voi reagoida, kun käyttäjä kirjautuu sisään tai ulos ilman sivun lataamista uudelleen.

Palvelinpuolen integraatioissa käytetään erillistä asiakas- ja muistiistuntoa Auth per käyttäjä (authStorage: false päällä RayfinClient, tai { storage: false } päällä Auth). Älä koskaan jaa muokattavaa sisäänkirjautunutta asiakasohjelmaa käyttäjien kesken. Tuhoa autentikointiinstanssi, kun sen pyyntö tai käyttäjäkohtainen laajuus päättyy.

Ota autentikointi käyttöön projektissasi

Tunnistautuminen on konfiguroitu .rayfin/rayfin.yml Seuraava esimerkki mahdollistaa sekä Fabric SSO:n (käyttöönotetut sovellukset) että sähköposti-/salasanakirjautumisen (paikalliseen kehitykseen):

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

Mitä kukin asetus säätelee:

  • services.auth.enabled – Käynnistää todennuspalvelun. Vaaditaan kaikissa Fabric-käyttöönotossa.
  • allowedRedirectUris – Alkuperät, jotka saavat vastaanottaa käyttäjän kirjautumisen jälkeen. Lisää paikallisen kehittäjän URL-osoitteesi tähän. npx rayfin up Lisää automaattisesti käyttöön otetun sovelluksen alkuperän.
  • fabric.enabled – Mahdollistaa Fabric SSO:n. Vaaditaan käyttöönotetuille sovelluksille.
  • fabric.externalEntraExchange – Mahdollistaa suoran delegoidun Entra-token-vaihdon ja ulkoisen vanhemman ja isännän vaihdon. Target Fabric -ympäristön on myös tuettava vaihtoa.
  • password.enabled – Mahdollistaa sähköposti- ja salasanakirjautumisen paikallista kehitystä varten.

Important

Fabric-käyttöönotot vaativat tunnistautumisen käyttöön. npx rayfin up epäonnistuu, kun services.auth.enabled on asetettu arvoon false.

Muokkauksen rayfin.ymljälkeen käynnistä paikallinen taustajärjestelmä uudelleen tai aja npx rayfin up muutos käyttöön.

Ulkoisesti hankittujen Entra-tokenien edellytykset

Suora vaihto ja ulkoinen vanhempi-isäntä-todennus vaativat delegoidun käyttäjätunnuksen Fabric/Power BI -yleisölle, jonka kohde-käyttöönotto hyväksyy, ja Item.Execute.All, joka on annettu kohteen omistajalle. Käyttäjällä täytyy myös olla Execute-oikeus sovelluksen kohteeseen. Pelkästään sovellusten tokeneita ei tueta näillä kirjautumispoluilla.

Identiteettikirjastosi hankkii tokenin ja hoitaa suostumuksen. Rayfin SDK vaihtaa sen Rayfin-istuntoon; se ei saa Entra-tokenia. Selaimen soittajat tarvitsevat myös palvelun CORS-politiikan salliakseen alkuperän ja valtuutusotsikon.

Mukautetut vaatimukset

Mukautetut vaatimukset mahdollistavat sovelluskohtaisen metatiedon liittämisen jokaiseen istuntoon – esimerkiksi vuokralaisen nimeen, ominaisuuslippuun tai sovellusversioon. Ne ovat hyödyllisiä roolipohjaisessa kulunhallinnassa ja ominaisuuksien portituksessa ilman, että datamallia tarvitsee muuttaa.

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

Mukautetut väitteet näkyvät istuntoobjektin sisällä ja niihin voi viitata datan käyttöoikeussäännöistä.

Mitä SDK tarjoaa

Kun käytät RayfinClient, autentikointipalvelu on käytettävissä .client.auth Käsitteellisellä tasolla se tarjoaa:

  • Rekisteröidy ja kirjaudu sisään sähköpostilla ja salasanalla paikallisen kehityksen aikana.
  • Kirjautuminen ja rekisteröityminen Fabric SSO kautta käyttöönotetuille sovelluksille. Sama puhelu käsittelee sekä uusia että palaavia käyttäjiä.
  • Suora delegoitu Entra-token-vaihto selaimessa tai Node.js-koodissa, sekä luotettu ulkoisen vanhemman ja isännän siirto upotetuille sovelluksille.
  • Kirjaudu ulos päättääksesi nykyisen istunnon.
  • Istuntoluku ja tilaukset , jotta käyttöliittymäsi pysyy synkronoituna käyttäjän todennustilan kanssa.

Koodista, joka yhdistää nämä ominaisuudet oikeaan sovellukseen, löydät kohdasta Configure Fabric SSO authentication for your Fabric app. Takaisinsoitto- ja siirtolupalistan ohjeita löytyy kohdasta Määritä autentikointiredirect URIs.