Zarządzanie tożsamościami i dostępem (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 na przyjęcie zasady bezpieczeństwa o najmniejszych uprawnieniach , dzięki czemu zapewniasz tylko niezbędny dostęp do swoich zasobów.
Szczegółowy opis uprawnień znajdziesz w dokumentacji Google Cloud IAM .
Omówienie uprawnień Firebase
Firebase oferuje dodatkowe opcje uprawnień, które są specyficzne dla projektów Firebase i członków Twojego projektu.
Gdy uwierzytelniony członek projektu zażąda wykonania czynności w Firebase, IAM podejmuje decyzję autoryzacyjną o tym, 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 przypisujesz rolę członkowi projektu, przyznajesz temu członkowi projektu wszystkie uprawnienia dla tej roli.
Członkowie projektu
Korzystając z uprawnień Firebase, przypisujesz role (i związane z nimi uprawnienia) członkom projektu. Członkowie projektu mogą należeć do następujących typów :
- konto Google
- Konto usługi
- Grupa Google
Role
Uprawnienia są przyznawane członkom Twojego projektu za pośrednictwem ról . Rola to zbiór uprawnień . Przypisując rolę członkowi projektu, przyznajesz temu członkowi projektu wszystkie uprawnienia, które zawiera rola.
Firebase IAM obsługuje następujące typy ról:
Podstawowe role : podstawowe role właściciela , edytującego i przeglądającego (wcześniej nazywane rolami „prymitywnymi”).
Wstępnie zdefiniowane role : wybrane 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 zapewniają pełny dostęp do odczytu/zapisu lub tylko do odczytu do wszystkich produktów Firebase.
Role kategorii produktów : role, które zapewniają pełny dostęp do odczytu/zapisu lub tylko do odczytu do grup produktów. Są one zbudowane wokół Google Analytics i ogólnych kategorii produktów.
Role na poziomie produktu : role, które zapewniają pełny dostęp do odczytu/zapisu lub tylko do odczytu do określonych produktów Firebase.
Role niestandardowe : w pełni dostosowane role, które tworzysz w celu dostosowania zestawu uprawnień spełniających określone wymagania Twojej organizacji.
Opóźnienie zmiany roli
Jeśli zmienisz przypisanie roli członka projektu, zastosowanie zmiany może zająć do 5 minut.
Zarządzaj członkami projektu i ich rolami
Zobacz członków projektu i ich role
Możesz wyświetlić wielu członków swojego projektu i ich role na karcie Użytkownicy i uprawnienia w > Ustawienia projektu w konsoli Firebase. Zwróć uwagę na następujące kwestie:- Konsola Firebase wyświetla tylko członków projektu, którym przypisano podstawową rolę (właściciel, edytujący, przeglądający) lub wstępnie zdefiniowaną rolę Firebase . Członkowie projektu wymienieni na tej karcie są jedynymi członkami projektu, którzy mają dostęp do projektu Firebase w konsoli Firebase.
- Konsola Firebase nie zawiera listy członków projektu, którzy są kontami usługi. Wyświetl tych członków projektu na stronie uprawnień w Google Cloud Console.
Przypisz rolę członkowi projektu
Aby zarządzać rolami przypisanymi do każdego członka projektu, musisz być właścicielem projektu Firebase (lub mieć przypisaną rolę z uprawnieniem resourcemanager.projects.setIamPolicy
).
Oto miejsca, w których możesz przypisywać i zarządzać rolami:
- Konsola Firebase oferuje uproszczony sposób przypisywania ról członkom projektu na karcie Użytkownicy i uprawnienia w > Ustawienia projektu . W konsoli Firebase możesz przypisać dowolne podstawowe role (właściciel, edytujący, przeglądający), role administratora/przeglądającego Firebase lub dowolne wstępnie zdefiniowane role kategorii produktów w Firebase .
- Konsola Google Cloud oferuje rozbudowany zestaw narzędzi do przypisywania ról członkom projektu na stronie uprawnień . W Cloud Console możesz także tworzyć niestandardowe role i zarządzać nimi , a także przyznawać kontom usługi dostęp do swojego projektu.
Pamiętaj, że w Google Cloud Console członkowie projektu są nazywani podmiotami głównymi .
Jeśli właściciel Twojego projektu nie może już wykonywać zadań właściciela (na przykład osoba opuściła Twoją firmę), a Twój projekt nie jest zarządzany przez organizację Google Cloud (patrz następny akapit), możesz skontaktować się z pomocą techniczną Firebase , aby uzyskać przypisany tymczasowy Właściciel.
Pamiętaj, że jeśli projekt Firebase jest częścią organizacji Google Cloud, może nie mieć właściciela. Jeśli nie możesz znaleźć właściciela projektu Firebase, skontaktuj się z osobą zarządzającą organizacją Google Cloud, aby przypisać właściciela do projektu.