Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Fabric App include un servizio di autenticazione predefinito che consente agli utenti di accedere, gestire le sessioni e allegare la propria identità a ogni chiamata di dati e archiviazione eseguita dall'app. Questo articolo illustra i concetti da comprendere prima di configurare l'autenticazione per il progetto.
Per informazioni dettagliate sull'implementazione, vedere:
- Configurare l'autenticazione SSO Fabric per l'app Fabric: codice di accesso e iscrizione per le app distribuite.
- Definire le autorizzazioni per i dati : usare l'identità dell'utente connesso per controllare l'accesso ai dati.
Modalità di autenticazione
Fabric App supporta due metodi di autenticazione. Il metodo usato dipende dalla posizione in cui viene eseguita l'app:
| Ambiente | Metodo supportato | Quando usarlo |
|---|---|---|
| Sviluppo locale | Posta elettronica e password | Scorrere rapidamente senza dipendere dal portale di Fabric. |
| Distribuito in Fabric | Fabric SSO (Microsoft Entra ID) | Accesso all'ambiente di produzione per qualsiasi utente autorizzato alla tua area di lavoro Fabric. |
Concetti chiave:
- Fabric SSO consente all'utente di accedere attraverso il portale di Fabric utilizzando l'identità Microsoft Entra ID esistente. Funziona solo quando l'app viene aperta da Fabric, quindi non puoi usarla durante lo sviluppo locale.
- La posta elettronica e la password sono destinate solo allo sviluppo locale. Non funziona dopo la distribuzione.
- Al primo accesso, viene effettuato il provisioning dell'utente. Con Fabric SSO, non esiste un passaggio di iscrizione separato. Gli utenti vengono creati automaticamente la prima volta che accedono.
- L'autenticazione è necessaria per le distribuzioni di Fabric. L'impostazione di
services.auth.enabledsufalsecausa il malfunzionamento dinpx rayfin up.
Sessioni e identità
Dopo l'accesso di un utente, l'SDK crea una sessione che rappresenta l'utente connesso. Le sessioni sono opache: l'app non deve esaminare i token sottostanti. L'app legge invece un piccolo set di proprietà di alto livello:
- Indica se una sessione è attualmente autenticata.
- L'utente
ideemail. - Attestazioni personalizzate che hai configurato in
rayfin.yml.
La stessa istanza client che effettua l'accesso dell'utente associa automaticamente l'identità dell'utente a ogni chiamata ai dati e di archiviazione. I token non vengono passati manualmente.
Le sessioni generano anche eventi di modifica, in modo che l'interfaccia utente possa reagire quando un utente accede o si disconnette senza ricaricare la pagina.
Abilitare l'autenticazione nel progetto
L'autenticazione è configurata in rayfin/rayfin.yml. L'esempio seguente abilita sia Fabric SSO (per le app distribuite) che l'accesso tramite posta elettronica/password (per lo sviluppo locale):
services:
auth:
enabled: true
allowedRedirectUris:
- http://localhost:5173
fabric:
enabled: true
password:
enabled: true # Local development only
Che cosa controlla ciascuna impostazione:
-
services.auth.enabled: attiva il servizio di autenticazione. Necessario per qualsiasi distribuzione di Fabric. -
allowedRedirectUris– Le origini autorizzate a cui reindirizzare l'utente dopo l'accesso. Aggiungere l'URL di sviluppo locale qui.npx rayfin upaggiunge automaticamente l'origine dell'app distribuita. -
fabric.enabled– abilita l'SSO di Fabric. Obbligatorio per le app distribuite. -
password.enabled: abilita l'accesso tramite posta elettronica e password per lo sviluppo locale.
Importante
Le distribuzioni di Fabric richiedono l'abilitazione dell'autenticazione.
npx rayfin up ha esito negativo quando services.auth.enabled è impostato su false.
Dopo aver modificato rayfin.yml, riavvia il backend locale o esegui npx rayfin up per applicare la modifica.
Attestazioni personalizzate
Le attestazioni personalizzate consentono di allegare metadati specifici dell'applicazione a ogni sessione, ad esempio un nome del tenant, un flag di funzionalità o una versione dell'app. Sono utili per il controllo degli accessi in base al ruolo e il controllo delle funzionalità senza modificare il modello di dati.
services:
auth:
enabled: true
customClaims:
tenant: default
app_version: 1.0.0
Le attestazioni personalizzate vengono visualizzate all'interno dell'oggetto sessione e possono essere referenziate dalle regole di autorizzazione dei dati.
Informazioni fornite dall'SDK
Quando si usa RayfinClient, il servizio di autenticazione è disponibile in client.auth. A livello concettuale, fornisce:
- Iscrizione e accesso con posta elettronica e password durante lo sviluppo locale.
- Accedere e registrarsi tramite Fabric SSO per le app distribuite. La stessa chiamata gestisce sia gli utenti nuovi sia quelli di ritorno.
- Disconnettersi per terminare la sessione corrente.
- Legge la sessione e gestisce le sottoscrizioni in modo che l'interfaccia utente rimanga sincronizzata con lo stato di autenticazione dell'utente.
Per il codice che integra questi elementi in un'app reale, consulta Configurare l'autenticazione SSO di Fabric per la tua app Fabric.