Zarządzanie dostępem do projektów za pomocą uprawnień Firebase

Usługa Identity and Access Management (IAM) umożliwia przyznawanie szczegółowego dostępu do określonych zasobów Firebase i Google oraz zapobiega niepożądanemu dostępowi do innych zasobów. IAM umożliwia wdrożenie zasady jak najmniejszych uprawnień, która polega na przyznawaniu wyłącznie niezbędnych praw dostępu do zasobów.

Szczegółowy opis uprawnień znajdziesz w Google Cloud dokumentacji uprawnień.

Przegląd Firebase IAM

Firebase oferuje dodatkowe opcje IAM, które są przeznaczone specjalnie dla projektów Firebase i członków projektu.

Gdy uwierzytelniony członek projektu zażąda działania w Firebase, IAM podejmuje decyzję o autoryzacji, czy członek projektu ma uprawnienia do wykonania żądanej operacji na zasobie. To, czy uczestnik projektu może wykonać żądanie, zależy od przypisanej mu roli. Każda rola to zbiór uprawnień. Przypisując rolę do członka projektu, przyznajesz mu wszystkie uprawnienia związane z tą rolą.

Członkowie projektu

Za pomocą usługi Firebase IAM możesz przypisywać role (i ich uprawnienia) członkom projektu. Uczestnicy projektu mogą być tych rodzajów:

  • Konto Google
  • Konto usługi
  • Grupa Google
Google Cloud

Role

Uprawnienia są przyznawane członkom projektu za pomocą ról. Rola to zbiór uprawnień. Przypisując rolę członkowi projektu, przyznajesz mu wszystkie uprawnienia zawarte w tej roli.

Firebase IAM obsługuje te typy ról:

  • Role podstawowe: podstawowe role Właściciel, EdytującyWyświetlający (wcześniej nazywane rolami „podstawowymi”).

  • Role wstępnie zdefiniowane: wyselekcjonowane role specyficzne dla Firebase, które umożliwiają bardziej szczegółową kontrolę dostępu niż role podstawowe. Firebase oferuje:

    • Role na poziomie Firebase: role, które przyznają pełne uprawnienia do odczytu i zapisu lub tylko do odczytu wszystkich usług Firebase.

    • Role w kategorii produktów: role, które przyznają pełny dostęp do odczytu i zapisu lub tylko do odczytu do grup produktów. Są one podzielone na Google Analytics i ogólne kategorie produktów.

    • Role na poziomie usługi: role, które przyznają pełne uprawnienia do zapisu i odczytu lub tylko do odczytu w przypadku określonych usług Firebase.

  • Role niestandardowe: w pełni dostosowane role, które tworzysz, aby dopasować zestaw uprawnień do konkretnych wymagań organizacji.

Zarządzanie członkami projektu i ich rolami

Wyświetlanie członków projektu i ich ról

Wielu członków projektu i ich role możesz wyświetlić na karcie Ustawienia > Użytkownicy i uprawnienia w konsoli Firebase. Uwaga:
  • W konsoli Firebase wyświetlani są tylko członkowie projektu, którym przypisano poziom podstawowy (Właściciel, Edytujący, Wyświetlający) lub rolę zdefiniowaną Firebase. Członkowie projektu wymienieni na tej karcie to jedyni członkowie projektu, którzy mają dostęp do projektu w Firebase w konsoli Firebase.
  • W konsoli Firebase nie są wyświetlani członkowie projektu, którzy są kontami usługi. Wyświetl tych członków projektu na stronie Administracja > Uprawnienia w konsoli Google Cloud.
Możesz też wyświetlić wszystkich członków projektu i ich role na stronie Administracja > Uprawnienia w konsoli Google Cloud.

Przypisywanie roli użytkownikowi projektu

Aby zarządzać rolami przypisanymi do poszczególnych członków projektu w Firebase, musisz być właścicielem projektu w Firebase (lub mieć przypisaną rolę z uprawnieniem resourcemanager.projects.setIamPolicy).

Role możesz przypisywać i nimi zarządzać w tych miejscach:

Jeśli właściciel projektu nie może już wykonywać zadań właściciela (np. osoba ta odeszła z firmy), a projekt nie jest zarządzany w ramach Google Cloudorganizacji (patrz następny akapit), możesz skontaktować się z zespołem pomocy Firebase i zapytać, jak poprosić o dostęp do projektu w Firebase.

Pamiętaj, że jeśli projekt Firebase należy do Google Cloudorganizacji, może nie mieć właściciela. Jeśli nie możesz znaleźć właściciela projektu w Firebase, skontaktuj się z osobą, która zarządza Twoją organizacją Google Cloud, i poproś o przypisanie właściciela do projektu.