Questa pagina è stata tradotta dall'API Cloud Translation.
Switch to English

Introduzione all'API di autenticazione amministratore

Firebase Admin SDK consente di integrare i propri server con l'autenticazione Firebase. È possibile utilizzare Firebase Admin SDK per gestire i propri utenti o per gestire i token di autenticazione. Esistono diversi motivi per cui vorresti farlo:

Gestione utenti

Non è sempre conveniente visitare la console di Firebase per gestire gli utenti di Firebase. L'API di gestione utenti admin fornisce l'accesso programmatico a quegli stessi utenti. Ti consente anche di fare cose che la console di Firebase non può fare, come recuperare i dati completi di un utente e modificare la password, l'indirizzo e-mail o il numero di telefono di un utente.

Autenticazione personalizzata

È possibile integrare un sistema utente esterno con Firebase. Ad esempio, potresti avere già un database utenti preesistente o potresti voler integrare con un provider di identità di terze parti che Firebase Authentication non supporta nativamente.

Per fare ciò, è possibile creare token personalizzati con attestazioni arbitrarie che identificano l'utente. Questi token personalizzati possono quindi essere utilizzati per accedere al servizio di autenticazione Firebase su un'applicazione client e assumere l'identità descritta dalle rivendicazioni del token. Questa identità verrà quindi utilizzata quando si accede ad altri servizi Firebase, come Cloud Storage.

Verifica dell'identità

L'autenticazione Firebase viene utilizzata principalmente per identificare gli utenti della tua app al fine di limitare l'accesso ad altri servizi, come il Cloud Storage. È inoltre possibile utilizzare il servizio per identificare questi utenti sul proprio server. Ciò consente di eseguire in modo sicuro la logica lato server per conto degli utenti che hanno eseguito l'accesso con l'autenticazione Firebase.

Per fare ciò, è possibile recuperare un token ID da un'applicazione client che ha effettuato l'accesso con l'autenticazione Firebase e includere il token in una richiesta al server. Il server verifica quindi il token ID ed estrae i reclami che identificano l'utente (incluso il loro uid , il provider di identità con cui hanno effettuato l'accesso, ecc.). Queste informazioni sull'identità possono quindi essere utilizzate dal server per eseguire azioni per conto dell'utente.

Firebase Admin SDK fornisce metodi per eseguire le attività di autenticazione sopra consentendoti di gestire i tuoi utenti, generare token personalizzati e verificare token ID.

Reclami personalizzati dell'utente

In alcuni casi, potresti voler implementare un controllo di accesso dettagliato per gli utenti che hanno già effettuato l'accesso con uno dei provider di autorizzazione Firebase supportati come Email / Password, Google, Facebook, telefono, ecc. Una combinazione di reclami personalizzati dell'utente e sicurezza delle applicazioni le regole forniscono questa funzionalità. Ad esempio, un utente che ha effettuato l'accesso con il provider e-mail e password di autenticazione Firebase può avere il controllo dell'accesso definito mediante attestazioni personalizzate.

Gestione utenti

Firebase Admin SDK fornisce un'API per la gestione degli utenti Firebase con privilegi elevati. L'API di gestione degli utenti admin ti dà la possibilità di recuperare, creare, aggiornare ed eliminare a livello di codice gli utenti senza richiedere le credenziali esistenti di un utente e senza preoccuparti della limitazione della tariffa sul lato client.

Gestisci gli utenti

Creazione di token personalizzati

L'uso principale per la creazione di token personalizzati è consentire agli utenti di autenticarsi rispetto a un meccanismo di autenticazione esterno o legacy. Potrebbe essere quello che controlli, come il tuo server LDAP, o un provider OAuth di terze parti che Firebase non supporta in modo nativo, come Instagram o LinkedIn.

Firebase Admin SDK ha un metodo integrato per la creazione di token personalizzati. È inoltre possibile creare a livello di codice token personalizzati in qualsiasi lingua utilizzando librerie JWT di terze parti.

Il tuo server dovrebbe creare un token personalizzato con un identificativo univoco ( uid ) e passarlo a un'app client, che lo utilizzerà per accedere a Firebase. Vedere Creare token personalizzati per esempi di codice e ulteriori dettagli sul processo di creazione di token personalizzati.

Crea token personalizzati

Verifica token ID

Se l'app client Firebase comunica con il server back-end, potrebbe essere necessario identificare l'utente attualmente connesso sul server in modo da poter eseguire la logica lato server per suo conto. Puoi farlo in modo sicuro utilizzando i token ID, creati da Firebase quando un utente accede a un'app Firebase. I token ID sono conformi alle specifiche OpenID Connect e contengono dati per identificare un utente, così come altre informazioni relative al profilo e all'autenticazione. Puoi inviare, verificare e ispezionare questi token dai tuoi backend. Ciò consente di identificare in modo sicuro l'utente attualmente connesso e di autorizzarlo nelle proprie risorse di back-end.

Firebase Admin SDK ha un metodo integrato per la verifica dei token ID. È inoltre possibile verificare a livello di codice token ID in qualsiasi lingua utilizzando librerie JWT di terze parti. Vedere Verifica token ID per ulteriori dettagli e esempi di codice sul processo di verifica token ID.

Verifica token ID

Reclami personalizzati dell'utente

Firebase Admin SDK consente di impostare attributi personalizzati sugli account utente. Con le richieste personalizzate dell'utente, puoi offrire agli utenti diversi livelli di accesso (ruoli), che vengono quindi applicati nelle regole di sicurezza di un'applicazione.

Dopo che le attestazioni personalizzate sono state modificate su un utente tramite Firebase Admin SDK, vengono propagate agli utenti autenticati sul lato client tramite i loro token ID. Il token ID è un meccanismo affidabile per la consegna di questi reclami personalizzati e tutti gli accessi autenticati devono convalidare il token ID prima di elaborare la richiesta associata.

Controlla l'accesso con reclami personalizzati