Uprawnienia przyznane rozszerzeniu Firebase

Aby Firebase Extension mogło wykonywać określone działania, Firebase przyznaje każdej instancji zainstalowanego rozszerzenia ograniczony dostęp do projektu i danych za pomocą konta usługi.

Czym jest konto usługi?

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

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

Firebase ogranicza dostęp do Twojego projektu i danych, przypisując do konta usługi rozszerzenia określone role (pakiety uprawnień). Role, których rozszerzenie potrzebuje do działania, są określane przez Firebase podczas tworzenia rozszerzenia. Podczas instalacji Firebase przypisuje te role do konta usługi rozszerzenia. 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 Twoim projektem Firebase możesz wyświetlić na karcie Konta usługi ustawieniach projektu.

Uprawnienia i role

Podczas opracowywania rozszerzenia Firebase określa poziom dostępu, którego rozszerzenie potrzebuje do działania.

Firebase określa ten poziom dostępu, wyraźnie wymieniając role (pakiety uprawnień), które Firebase powinien przypisać do konta usługi rozszerzenia podczas jego instalacji.

Każda rola (i związane z nią uprawnienia) jest przypisana do konkretnej usługi lub produktu. Przykłady ról to firebasehosting.admin, bigquery.dataEditorfirebasedatabase.admin. Firebase podaje wymagane role w pliku specyfikacji rozszerzenia (extension.yaml).

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

Dowiedz się więcej o uprawnieniach przypisanych do poszczególnych ról:

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 mogło działać w Twoim projekcie, ponieważ nie będzie miało do niego ani do danych żadnych uprawnień dostępu.