Identity and Access Management (IAM) pozwala przyznawać szczegółowy dostęp do zasobów Firebase i Google oraz zapobiega niechcianemu dostępowi do innych zasobów. IAM umożliwia wdrożenie zasady minimalnego wymaganego poziomu uprawnień, dzięki czemu przyznajesz dostęp do zasobów tylko w niezbędnym zakresie.
Szczegółowy opis uprawnień znajdziesz w Dokumentacja uprawnień Google Cloud.
Omówienie usługi Firebase IAM
Firebase oferuje dodatkowe opcje IAM, które są specyficzne dla projektów Firebase i ich członków.
Gdy uwierzytelniony członek projektu poprosi o działanie w Firebase, usługa IAM podejmuje decyzję o autoryzacji, czy użytkownik projektu ma uprawnienia do wykonania tej czynności, na zasobie. Określa, czy użytkownik projektu może wykonywać prośba zależy od roli przypisanej do uczestnika projektu. Każda rola to zbiór uprawnień. Gdy przypiszesz rolę do użytkownika uczestnika projektu, przyznajesz temu członkowi projektu wszystkie uprawnienia tej roli.
Członkowie projektu
Za pomocą uprawnień Firebase przypisujesz role (i nieodłączne uprawnienia) użytkownikom członków projektu. Uczestnicy projektu mogą być następujących typów:
- Konto Google
- Konto usługi
- grupa dyskusyjna Google
Role
Uprawnienia są przyznawane uczestnikom projektu przez role. Rola to zbiór uprawnień. Przypisując rolę do członka projektu, przyznajesz temu członkowi wszystkie uprawnienia zawarte w tej roli.
Uprawnienia Firebase obsługują następujące typy ról:
Poziomy podstawowe: Podstawowe role właściciela, edytującego i wyświetlającego (dawniej: „podstawowy” role).
Role wstępnie zdefiniowane: Firebase oferuje:
Role na poziomie Firebase: role, które przyznają pełny dostęp do odczytu/zapisu lub dostęp tylko do odczytu do wszystkich usług Firebase.
Role związane z kategoriami produktów: role, które przyznają pełny dostęp do odczytu/zapisu lub dostęp tylko do odczytu do grup produktów. Są związane z Google Analytics i ogólnymi kategorii produktów.
Role na poziomie produktu: Role, które dają pełny dostęp do odczytu/zapisu lub tylko do odczytu do określonych usług Firebase.
Role niestandardowe: w pełni dostosowane role, które tworzysz, aby dostosować zestaw uprawnień Twojej organizacji.
Zarządzanie członkami projektu i ich rolami
Wyświetlanie członków projektu i ich ról
W konsoli Firebase na stronie > Ustawienia projektu > Użytkownicy i uprawnienia możesz wyświetlić wielu członków projektu i ich role. Uwaga:- Konsola Firebase wyświetla tylko członków projektu, którym przypisano rolę podstawową (Właściciel, Edytujący, Wyświetlający) lub wstępnie zdefiniowaną rolę Firebase. Użytkownicy projektu wymienieni na tej karcie są jedynymi użytkownikami, którzy mają dostęp do projektu Firebase w konsoli Firebase.
- Konsola Firebase nie wyświetla listy członków projektu, którzy są usługą kont. Te osoby możesz wyświetlić na stronie uprawnień w konsoli Google Cloud.
Przypisywanie roli członkowi projektu
Aby zarządzać rolami przypisanymi do poszczególnych członków projektu, musisz być właścicielem Firebase
projektu (albo przypisać rolę z odpowiednimi uprawnieniami,
resourcemanager.projects.setIamPolicy
).
Oto miejsca, w których możesz przypisywać role i nimi zarządzać:
- Konsola Firebase oferuje uproszczony sposób przypisywania ról uczestnikom projektu na karcie Użytkownicy i uprawnienia w sekcji > Ustawienia projektu. W konsoli Firebase możesz przypisać dowolną z podstawowych ról (Właściciel, Edytujący, Wyświetlający), rólę Administratora Firebase lub Wyświetlającego Firebase albo dowolną z predefiniowanych ról w kategorii usług Firebase.
- Konsola Google Cloud oferuje bogaty zestaw narzędzi do przypisywania ról członkom projektu na stronie Uprawnienia. W konsoli Cloud możesz też tworzyć role niestandardowe i nimi zarządzać, a także przyznawać kontom usługi dostęp do projektu.
Pamiętaj, że w konsoli Google Cloud uczestnicy projektu są nazywani podmiotami zabezpieczeń.
Jeśli właściciel projektu nie może już wykonywać zadań właściciela (np. opuścił firmę), a Twoim projektem nie zarządza organizacja Google Cloud (patrz następny akapit), możesz skontaktować się z zespołem pomocy Firebase i zapytać, jak poprosić o dostęp do projektu Firebase.
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ła właściciela projektu.