Autorizzazioni concesse a un'estensione Firebase

Affinché un Firebase Extension esegua le azioni specificate, Firebase concede a ciascuna istanza di un'estensione installata un accesso limitato al tuo progetto e dati tramite un account di servizio.

Che cos'è un account di servizio?

A account di servizio è un tipo speciale di account utente Google. Rappresenta un utente "non umano" che autorizzati ad accedere ai dati utilizzando le API di Google.

Durante l'installazione di un'estensione, Firebase crea un account di servizio nel tuo progetto. Ogni istanza installata di un'estensione ha il proprio account di servizio.

Firebase limita l'accesso al tuo progetto e ai tuoi dati assegnando il nome ruoli specifici per l'account di servizio (pacchetti di autorizzazioni). I ruoli richiesti da un'estensione sono determinate da Firebase durante lo sviluppo delle estensioni. Alle ore installazione, Firebase assegna questi ruoli all'account di servizio di un'estensione, e non devi modificare, aggiungere o eliminare nessuno di questi ruoli assegnati (in caso contrario, l'estensione installata non funzionerà come previsto). Puoi, tuttavia, disinstallare l'estensione; il servizio viene eliminato account (e il suo accesso) in modo completo.

Gli account di servizio creati per le estensioni sono nel formato: ext-extension-instance-id@project-id.iam.gserviceaccount.com.

Puoi visualizzare tutti gli account di servizio associati al tuo progetto Firebase in il Account di servizio scheda di Impostazioni progetto.

Autorizzazioni e ruoli

Durante lo sviluppo di un'estensione, Firebase determina il livello di accesso per il funzionamento di un'estensione.

Firebase definisce questo livello di accesso elencando esplicitamente i ruoli (bundle di autorizzazioni) che Firebase deve assegnare all'account di servizio dell'estensione durante l'installazione dell'estensione.

Ogni ruolo (e le relative autorizzazioni intrinseche) si basa su un prodotto o su completamente gestito di Google Cloud. Esempi di ruoli sono firebasehosting.admin, bigquery.dataEditor e firebasedatabase.admin. Firebase elenca i ruoli richiesti per un'estensione nel file di specifiche dell'estensione (il file extension.yaml).

Per le estensioni Firebase ufficiali, Firebase esamina accuratamente questo elenco di per garantire che l'accesso di un'estensione sia rigorosamente limitato all'ambito del le attività dell'estensione. Puoi anche rivedere e confermare personalmente l'accesso a un'estensione visualizzando la pagina dei dettagli dell'estensione nella La dashboard di Firebase Extensions o la relativa visualizzazione README file.

Scopri le autorizzazioni incluse in ciascun ruolo:

Che cosa succede quando disinstallo un'estensione?

Quando disinstallare un'estensione dal tuo progetto, Firebase elimina l'account di servizio creato per quell'istanza dell'estensione. Dopo l'eliminazione dell'account di servizio, l'estensione non può essere eseguita nel progetto perché non ha più diritti di accesso al progetto o ai dati.