Uprawnienia przyznane rozszerzeniu Firebase

Aby rozszerzenie Firebase wykonało określone działania, Firebase przyznaje każdej instancji zainstalowanego rozszerzenia ograniczony dostęp do projektu i danych na koncie usługi.

Co to jest konto usługi?

Konto usługi to specjalny typ konta użytkownika Google. Jest to użytkownik, który nie jest człowiekiem i ma uprawnienia dostępu do danych za pomocą interfejsów API Google.

Podczas instalowania rozszerzenia Firebase tworzy konto usługi w projekcie. Każda zainstalowana instancja rozszerzenia ma własne konto usługi.

Firebase ogranicza dostęp do Twojego projektu i danych przez przypisanie do konta usługi rozszerzenia określonych ról (pakietów uprawnień). Role wymagane do działania rozszerzenia są określane przez Firebase podczas jego tworzenia. Podczas instalacji usługa Firebase przypisuje te role do konta usługi rozszerzenia i nie należy modyfikować, dodawać ani usuwać żadnej z tych przypisanych ról (w przeciwnym razie zainstalowane rozszerzenie nie będzie działać zgodnie z oczekiwaniami). Możesz jednak odinstalować rozszerzenie, co spowoduje całkowite usunięcie konta usługi (i jego dostępu).

Konta usługi utworzone na potrzeby rozszerzeń mają format: ext-extension-instance-id@project-id.iam.gserviceaccount.com.

Wszystkie konta usługi powiązane z projektem Firebase możesz wyświetlić na karcie Konta usługi w ustawieniach projektu.

Uprawnienia i role

Podczas tworzenia rozszerzenia Firebase określa poziom dostępu wymagany do działania rozszerzenia.

Firebase definiuje ten poziom dostępu, jawnie wymieniając role (pakiety uprawnień), które Firebase powinna przypisać do konta usługi rozszerzenia podczas instalowania rozszerzenia.

Każda rola (i jej wbudowane uprawnienia) jest związana z konkretną usługą. Przykładowe role to firebasehosting.admin, bigquery.dataEditor i firebasedatabase.admin. Firebase wymienia wymagane role rozszerzenia w pliku specyfikacji rozszerzenia (pliku extension.yaml).

W przypadku oficjalnych rozszerzeń w Firebase Firebase dokładnie sprawdza tę listę ról, aby mieć pewność, że dostęp rozszerzenia jest ściśle ograniczony do zakresu zadań rozszerzenia. Możesz też samodzielnie sprawdzić i potwierdzić dostęp przyznany rozszerzeniu, wyświetlając stronę z informacjami o nim w panelu Rozszerzenia Firebase lub wyświetlając jego plik README.

Dowiedz się więcej o uprawnieniach w poszczególnych rolach:

Co się stanie, gdy odinstaluję rozszerzenie?

Gdy odinstalujesz rozszerzenie z projektu, Firebase usunie konto usługi utworzone dla tej instancji rozszerzenia. Po usunięciu konta usługi rozszerzenie nie będzie działać w Twoim projekcie, ponieważ utraci ono uprawnienia dostępu do Twojego projektu lub danych.