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 pozwala zastosować zasadę jak najmniejszych uprawnień, która polega na przyznawaniu wyłącznie niezbędnych praw dostępu do zasobów.
Szczegółowy opis IAM znajdziesz w Google Cloud dokumentacji IAM.
Przegląd uprawnień Firebase
Firebase oferuje dodatkowe opcje IAM, które są specyficzne dla projektów Firebase i członków projektu.
Gdy uwierzytelniony członek projektu poprosi o wykonanie działania w Firebase, IAM podejmie decyzję o autoryzacji, czy członek projektu ma uprawnienia do wykonania żądanej operacji na zasobie. To, czy członek projektu może wykonać żądanie, zależy od przypisanej mu roli. Każda rola to zbiór uprawnień, a gdy przypiszesz rolę członkowi projektu, przyznasz mu wszystkie uprawnienia związane z tą rolą.
Członkowie projektu
Za pomocą Firebase IAM możesz przypisywać role (i związane z nimi uprawnienia) członkom projektu. Członkowie projektu mogą być następujących typów:
- Konto Google
- Konto usługi
- Grupa Google
Role
Uprawnienia są przyznawane członkom projektu za pomocą ról. Rola to zbiór uprawnień. Gdy przypiszesz rolę członkowi projektu, przyznasz mu wszystkie uprawnienia zawarte w tej roli.
Firebase IAM obsługuje te typy ról:
Role podstawowe: podstawowe role Właściciel, Edytujący i Wyświetlający (wcześniej nazywane "podstawowymi" rolami).
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 zapisu i odczytu lub tylko do odczytu wszystkich usług Firebase.
Role w kategorii usług: role, które przyznają pełne uprawnienia do zapisu i odczytu lub tylko do odczytu grup usług. Są one oparte na Google Analytics i ogólnych kategoriach usług.
Role na poziomie usługi: role, które przyznają pełne uprawnienia do zapisu i odczytu lub tylko do odczytu 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ć w konsoli Firebase w ustawieniach na karcie- Konsola Firebase wyświetla tylko członków 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 Firebase konsoli.
- Konsola Firebase nie wyświetla członków projektu, którzy są kontami usługi. Możesz ich wyświetlić w konsoli Google Cloud na stronie Administracja > Uprawnienia.
Przypisywanie roli członkowi projektu
Aby zarządzać rolami przypisanymi do poszczególnych członków projektu, 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:
-
Konsola Firebase umożliwia łatwe przypisywanie ról członkom projektu w ustawieniach na karcie
Ustawienia > Użytkownicy i uprawnienia. Możesz przypisać dowolną z ról podstawowych (Właściciel, Edytujący, Wyświetlający), ról administratora lub wyświetlającego Firebase, albo dowolną z wstępnie zdefiniowanych ról Firebase w kategorii usług. -
Konsola Google Cloud oferuje rozbudowany zestaw narzędzi do przypisywania ról
członkom projektu na stronie Administracja
Uprawnienia.
Możesz też tworzyć role niestandardowe i nimi zarządzać
oraz przyznawać
kontom usługi dostęp do projektu.
Pamiętaj, że w konsoli Google Cloud członkowie projektu są nazywani podmiotami zabezpieczeń.
Jeśli właściciel projektu w Firebase nie może już wykonywać zadań właściciela (np. osoba opuściła firmę), a projekt nie jest zarządzany w ramach organizacji Google Cloud (patrz następny akapit), możesz skontaktować się z zespołem pomocy Firebase i zapytać, jak uzyskać dostęp do projektu w Firebase.
Pamiętaj, że projekt Firebase może nie mieć właściciela, jeśli należy do organizacji Google Cloud. Jeśli nie możesz znaleźć właściciela projektu w Firebase, skontaktuj się z osobą, która zarządza Twoją Google Cloud organizacją, i poproś o przypisanie właściciela do projektu.