Управление идентификацией и доступом (IAM) позволяет предоставлять детальный доступ к конкретным ресурсам Firebase и Google, а также предотвращает нежелательный доступ к другим ресурсам. IAM позволяет применять принцип минимальных привилегий , предоставляя доступ к ресурсам только в случае необходимости.
Подробное описание IAM см. в документации Google Cloud IAM .
Обзор Firebase IAM
Firebase предлагает дополнительные параметры IAM, специфичные для проектов Firebase и участников вашего проекта.
Когда авторизованный участник проекта запрашивает действие в Firebase, IAM принимает решение об авторизации, определяя, имеет ли участник проекта разрешение на выполнение запрошенной операции над ресурсом . Разрешение на выполнение запроса зависит от назначенной ему роли . Каждая роль представляет собой набор разрешений, и когда вы назначаете роль участнику проекта, вы предоставляете этому участнику проекта все разрешения, необходимые для этой роли.
Участники проекта
С помощью Firebase IAM вы назначаете роли (и связанные с ними разрешения) участникам проекта. Участники проекта могут быть следующих типов :
- аккаунт Google
- Служебный аккаунт
- Группа Google
Роли
Права доступа к участникам проекта предоставляются посредством ролей . Роль представляет собой набор прав доступа . Когда вы назначаете роль участнику проекта, вы предоставляете этому участнику проекта все права доступа, которые содержит эта роль.
Firebase IAM поддерживает следующие типы ролей:
Основные роли : роль основного владельца , роль редактора и роль зрителя (ранее называвшиеся «примитивными» ролями).
Предопределенные роли : Специально подобранные роли Firebase, обеспечивающие более детальный контроль доступа, чем базовые роли. Firebase предлагает:
Роли уровня Firebase : роли, предоставляющие полный доступ на чтение/запись или только на чтение ко всем продуктам Firebase.
Роли категорий товаров : роли, предоставляющие полный доступ на чтение/запись или только на чтение к группам товаров. Они структурированы на основе Google Analytics и общих категорий товаров.
Роли на уровне продукта : роли, предоставляющие полный доступ на чтение/запись или только на чтение к определенным продуктам Firebase.
Пользовательские роли : Полностью настраиваемые роли, которые вы создаете для определения набора разрешений, соответствующих конкретным требованиям вашей организации.
Управление участниками проекта и их ролями.
Ознакомьтесь с участниками проекта и их ролями.
Многие участники вашего проекта и их роли можно просмотреть на вкладке «Пользователи и разрешения» в разделе > «Настройки проекта» в консоли Firebase . Обратите внимание на следующее:- В консоли Firebase отображаются только участники проекта, которым назначена базовая роль (Владелец, Редактор, Просмотрщик) или предопределенная роль Firebase . Участники проекта, перечисленные на этой вкладке, являются единственными участниками проекта, имеющими доступ к проекту Firebase в консоли Firebase .
- В консоли Firebase не отображаются участники проекта, являющиеся сервисными учетными записями. Просмотреть этих участников проекта можно на странице IAM в консоли Google Cloud .
Назначьте роль участнику проекта.
Для управления ролями, назначенными каждому участнику проекта, необходимо быть владельцем проекта Firebase (или иметь роль с разрешением resourcemanager.projects.setIamPolicy ).
Здесь вы можете назначать роли и управлять ими:
- Консоль Firebase предлагает упрощенный способ назначения ролей участникам проекта на вкладке «Пользователи и разрешения» в разделе > «Настройки проекта» . В консоли Firebase вы можете назначить любую из основных ролей (Владелец, Редактор, Просмотрщик), роли Администратор/Просмотрщик Firebase или любую из предопределенных ролей категорий продуктов Firebase .
- Консоль Google Cloud предлагает обширный набор инструментов для назначения ролей участникам проекта на странице IAM . В консоли Cloud вы также можете создавать и управлять пользовательскими ролями , а также предоставлять учетным записям служб доступ к вашему проекту.
Обратите внимание, что в консоли Google Cloud участники проекта называются принципалами .
Если владелец вашего проекта больше не может выполнять свои обязанности (например, он уволился из вашей компании), и ваш проект не управляется через организацию Google Cloud (см. следующий абзац), вы можете обратиться в службу поддержки Firebase и узнать, как запросить доступ к проекту Firebase.
Обратите внимание, что если проект Firebase является частью организации Google Cloud , у него может не быть владельца. Если вы не можете найти владельца для своего проекта Firebase, свяжитесь с человеком, который управляет вашей организацией Google Cloud чтобы назначить владельца для проекта.