Catch up on highlights from Firebase at Google I/O 2023. Learn more

Autorizzazioni concesse a un'estensione Firebase

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

Cos'è un account di servizio?

Un account di servizio è un tipo speciale di account utente Google. Rappresenta un utente non umano autorizzato ad accedere ai dati tramite 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 ruoli specifici dell'account di servizio di un'estensione (pacchetti di autorizzazioni) . I ruoli richiesti da un'estensione per funzionare sono determinati da Firebase durante lo sviluppo dell'estensione. Al momento dell'installazione, Firebase assegna questi ruoli all'account di servizio di un'estensione e non devi modificare, aggiungere o eliminare nessuno di questi ruoli assegnati (altrimenti l'estensione installata non funzionerà come previsto). Puoi, tuttavia, disinstallare l'estensione , che elimina del tutto l'account del servizio (e il suo accesso).

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 nella scheda Account di servizio delle tue Impostazioni progetto .

Autorizzazioni e ruoli

Durante lo sviluppo di un'estensione, Firebase determina il livello di accesso richiesto da un'estensione per funzionare.

Firebase definisce questo livello di accesso elencando in modo esplicito i ruoli (gruppi 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 servizio specifico. Esempi di ruoli sono firebasehosting.admin , bigquery.dataEditor e firebasedatabase.admin . Firebase elenca i ruoli richiesti per un'estensione nel file delle specifiche dell'estensione (il file extension.yaml ).

Per le estensioni Firebase ufficiali, Firebase esamina attentamente questo elenco di ruoli per garantire che l'accesso di un'estensione sia strettamente limitato all'ambito delle attività dell'estensione. Puoi anche esaminare e confermare tu stesso l'accesso concesso a un'estensione visualizzando la pagina dei dettagli dell'estensione nella dashboard delle estensioni Firebase o visualizzando il relativo file README .

Scopri le autorizzazioni incluse in ogni ruolo:

Cosa succede quando disinstallo un'estensione?

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