Разрешения Firebase IAM

Разрешения предоставляются участникам вашего проекта через роли . Роль — это набор разрешений. Когда вы назначаете роль участнику проекта, вы предоставляете этому участнику проекта все разрешения, которые содержит роль.

На этой странице описаны действия, активируемые разрешениями, которые вы можете найти в списке ролей, поддерживаемых Firebase. Эти разрешения делятся на две категории:

Требуемые разрешения

Firebase IAM включает следующие разрешения:

Общий список и описание разрешений, специфичных для продукта или услуги Firebase, можно найти в соответствующем разделе в разделе Разрешения IAM для конкретного продукта Firebase .

Требуемые разрешения включены во все роли

Разрешения, перечисленные в следующей таблице, необходимы для использования любого продукта или службы Firebase.

Эти разрешения автоматически включаются в каждую из предопределенных ролей Firebase .

Разрешение Описание
Предоставляет разрешения на получение информации о проекте Firebase.
Предоставляет разрешения на получение информации о проекте Firebase.
Предоставляет разрешения на проверку состояния API Google и запуск команд Firebase CLI.

Необходимые разрешения для действий, специфичных для службы Firebase

Разрешения, перечисленные в следующей таблице, необходимы для выполнения некоторых действий, специфичных для службы Firebase.

При необходимости эти разрешения автоматически включаются в каждую из предопределенных ролей Firebase .

Действие Требуемое разрешение
Получите доступ к интеграции проектов Firebase с помощью инструментов для совместной работы (включая Slack, Jira и PagerDuty). firebaseextensions.configs.*
Просмотр использования и аналитики из StackDriver мониторинг.timeSeries.list
Запуск команд Firebase CLI
Для получения дополнительной информации обратитесь к документации Google Cloud о доступе к конфигуратору времени выполнения .
runtimeconfig.*

Необходимые разрешения для действий, связанных с управлением Firebase

Разрешения, перечисленные в следующей таблице, являются дополнительными разрешениями, которые необходимы для выполнения некоторых действий, связанных с управлением Firebase.

Разрешение управления и связанные с ним действия Требуется дополнительное разрешение
firebase.billingPlans.update
Изменение тарифного плана для проекта Firebase resourcesmanager.projects.createBillingAssignment
resourcesmanager.projects.deleteBillingAssignment
firebase.projects.delete
Удаление проекта Firebase resourcesmanager.projects.delete
firebase.projects.update
Добавьте ресурсы Firebase в существующий проект Google Cloud. resourcesmanager.projects.get
serviceusage.services.enable
serviceusage.services.get
Изменить имя проекта Firebase resourcesmanager.projects.update
Добавление отпечатков сертификата SHA для приложений Android clientauthconfig.clients.create
Удаление отпечатков сертификата SHA для приложений Android clientauthconfig.clients.delete
Обновите идентификатор App Store или идентификатор группы для приложений Apple. clientauthconfig.clients.get
clientauthconfig.clients.update

Разрешения IAM для конкретного продукта Firebase

В следующих таблицах перечислены разрешения, специфичные для продукта или услуги Firebase. Вы можете использовать эти разрешения для создания пользовательских ролей .

Разрешения на управление Firebase

Обратите внимание, что некоторые из следующих разрешений на управление требуют дополнительных разрешений для определенных действий .

Имя разрешения Описание
firebase.billingPlans.get Получить текущий тарифный план Firebase для проекта.
firebase.billingPlans.update Изменить текущий тарифный план Firebase для проекта
firebase.clients.create Добавление новых приложений в проект
firebase.clients.delete Удаление существующих приложений из проекта
firebase.clients.get Получение сведений и конфигураций приложений в проекте.
firebase.clients.list Получить список приложений в проекте
firebase.clients.undelete Отмените удаление удаленного приложения до того, как его данные будут удалены навсегда.
firebase.clients.update Обновление сведений и конфигураций приложений в проекте.
firebase.links.create Создавайте новые ссылки на системы Google
(Консоль Firebase > Настройки проекта > Интеграции)
firebase.links.delete Удалить ссылки на системы Google
(Консоль Firebase > Настройки проекта > Интеграции)
firebase.links.list Получить список ссылок на системы Google
(Консоль Firebase > Настройки проекта > Интеграции)
firebase.links.update Обновить существующие ссылки на системы Google.
(Консоль Firebase > Настройки проекта > Интеграции)
firebase.playLinks.get Получение сведений о ссылке на Google Play
(Консоль Firebase > Настройки проекта > Интеграции > Google Play)
firebase.playLinks.list Получить список ссылок на Google Play
(Консоль Firebase > Настройки проекта > Интеграции > Google Play)
firebase.playLinks.update Создавайте новые ссылки и обновляйте существующие ссылки на Google Play.
(Консоль Firebase > Настройки проекта > Интеграции > Google Play)
firebase.projects.delete Удалить существующие проекты
firebase.projects.get Получение сведений и ресурсов Firebase для проекта.
firebase.projects.update Изменение атрибутов существующего проекта
Получайте оповещения о применимых продуктах и ​​функциях Firebase ( подробнее )
firebaseinstallations.instances.delete Удалите идентификатор установки Firebase и данные, связанные с этой установкой ( подробнее ).

Разрешения Google Аналитики

Следующие разрешения предоставляют доступ к ресурсу Analytics, связанному с проектом Firebase. Они позволяют участникам проекта Firebase получать доступ к данным Analytics, включая аудитории, свойства пользователей, последовательности, отчеты, конверсии и т. д.

Имя разрешения Описание
firebaseanalytics.resources.googleAnalyticsПравить По умолчанию предоставляет роль редактора Analytics связанному ресурсу Analytics.
firebaseanalytics.resources.googleAnalyticsAdditionalAccess По умолчанию предоставляет роль Analytics Marketer связанному ресурсу Analytics.
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze По умолчанию предоставляет роль просмотра аналитики связанному ресурсу Analytics.
firebaseanalytics.resources.googleAnalyticsRestrictedAccess По умолчанию предоставляет роль просмотра аналитики связанному ресурсу Google Analytics без доступа к данным о доходах и расходах.

Разрешения проверки приложений Firebase

Имя разрешения Описание
firebaseappcheck.appAttestConfig.get Получение конфигурации App Attest приложения.
firebaseappcheck.appAttestConfig.update Обновите конфигурацию App Attest приложения.
firebaseappcheck.appCheckTokens.verify Проверка токенов проверки приложений, выданных для проекта Firebase
firebaseappcheck.debugTokens.get Получить токены отладки приложения
firebaseappcheck.debugTokens.update Создание, обновление или удаление токенов отладки приложения.
firebaseappcheck.deviceCheckConfig.get Получение конфигурации DeviceCheck приложения.
firebaseappcheck.deviceCheckConfig.update Обновите конфигурацию DeviceCheck приложения.
firebaseappcheck.playIntegrityConfig.get Получение конфигурации Play Integrity приложения.
firebaseappcheck.playIntegrityConfig.update Обновите конфигурацию Play Integrity приложения.
firebaseappcheck.recaptchaEnterpriseConfig.get Получите конфигурацию reCAPTCHA Enterprise приложения.
firebaseappcheck.recaptchaEnterpriseConfig.update Обновите конфигурацию reCAPTCHA Enterprise приложения.
firebaseappcheck.recaptchaV3Config.get Получите конфигурацию приложения reCAPTCHA v3.
firebaseappcheck.recaptchaV3Config.update Обновите конфигурацию reCAPTCHA v3 приложения.
firebaseappcheck.safetyNetConfig.get Получение конфигурации SafetyNet приложения
firebaseappcheck.safetyNetConfig.update Обновите конфигурацию SafetyNet приложения.
firebaseappcheck.services.get Получение конфигураций принудительного применения служб проекта.
firebaseappcheck.services.update Обновление конфигураций принудительного применения служб проекта

Разрешения на распространение приложений Firebase

Имя разрешения Описание
firebaseappdistro.releases.list Получить список существующих раздач и ссылки для приглашений.
firebaseappdistro.releases.update Создание, удаление и изменение дистрибутивов
Создание и удаление ссылок для приглашения
firebaseappdistro.testers.list Получить список существующих тестировщиков в проекте.
firebaseappdistro.testers.update Создание и удаление тестировщиков в проекте
firebaseappdistro.groups.list Получить список существующих групп тестировщиков в проекте.
firebaseappdistro.groups.update Создание и удаление групп тестировщиков в проекте

Разрешения аутентификации Firebase

Имя разрешения Описание
firebaseauth.configs.create Создайте конфигурацию аутентификации
firebaseauth.configs.get Получить конфигурацию аутентификации
firebaseauth.configs.getHashConfig Получите конфигурацию хэша паролей и хэш паролей учетных записей пользователей.
firebaseauth.configs.getSecret Получите секрет клиента в конфигурации аутентификации.
firebaseauth.configs.update Обновите существующую конфигурацию аутентификации.
firebaseauth.users.create Создание новых пользователей в аутентификации
firebaseauth.users.createSession Создать файл cookie сеанса для вошедшего в систему пользователя.
firebaseauth.users.delete Удалить существующих пользователей в аутентификации
firebaseauth.users.get Получить список существующих пользователей аутентификации.
firebaseauth.users.sendEmail Отправка электронных писем пользователям
firebaseauth.users.update Обновить существующих пользователей в аутентификации

Разрешения Firebase A/B-тестирования (бета-версия)

Имя разрешения Описание
firebaseabt.experimentresults.get Получить результаты эксперимента
firebaseabt.experiments.create Создавайте новые эксперименты
firebaseabt.experiments.delete Удалить существующие эксперименты
firebaseabt.experiments.get Получить сведения о существующем эксперименте
firebaseabt.experiments.list Получить список существующих экспериментов
firebaseabt.experiments.update Обновить существующий эксперимент
firebaseabt.projectmetadata.get Получение метаданных аналитики для настройки эксперимента

Разрешения Cloud Firestore

Список и описания разрешений Cloud Firestore см. в документации Google Cloud .

Разрешения облачного хранилища

Список и описание разрешений Cloud Storage см. в документации Google Cloud .

Разрешения правил безопасности Firebase (Cloud Firestore и Cloud Storage)

Имя разрешения Описание
firebaserules.releases.create Создание релизов
firebaserules.releases.delete Удаление выпусков
firebaserules.releases.get Получить релизы
firebaserules.releases.getExecutable Получите полезные данные двоичного исполняемого файла для выпусков.
firebaserules.releases.list Получить список релизов
firebaserules.releases.update Обновить ссылки на наборы правил для выпусков
firebaserules.rulesets.create Создать новые наборы правил
firebaserules.rulesets.delete Удалить существующий набор правил
firebaserules.rulesets.get Получить наборы правил с источником
firebaserules.rulesets.list Найти метаданные набора правил (без источника)
firebaserules.rulesets.test Исходники проверки на корректность

Облачные функции для разрешений Firebase

Список и описания разрешений облачных функций см. в документации IAM .

Имейте в виду, что для развертывания функций требуется определенная конфигурация разрешений, которые не включены в стандартные предопределенные роли Firebase . Для развертывания функций используйте один из следующих вариантов:

Разрешения для кампаний обмена сообщениями Firebase

Эти разрешения применяются к кампаниям Firebase Cloud Messaging и Firebase In-App Messaging.

Имя разрешения Описание
firebasemessagingcampaigns.campaigns.create Создавайте новые кампании
firebasemessagingcampaigns.campaigns.delete Удалить существующие кампании
firebasemessagingcampaigns.campaigns.get Получить подробную информацию о существующих кампаниях
firebasemessagingcampaigns.campaigns.list Получить список существующих кампаний
firebasemessagingcampaigns.campaigns.update Обновить существующие кампании
firebasemessagingcampaigns.campaigns.start Запустить существующие кампании
firebasemessagingcampaigns.campaigns.stop Обновить существующие кампании

Разрешения Firebase Cloud Messaging

Имя разрешения Описание
Cloudmessaging.messages.create Отправляйте уведомления и сообщения с данными через HTTP API FCM и Admin SDK.
Имя разрешения Описание
firebasenotifications.messages.create Создание новых сообщений в композиторе уведомлений.
firebasenotifications.messages.delete Удалить существующие сообщения в композиторе уведомлений.
firebasenotifications.messages.get Получить подробную информацию о существующих сообщениях в композиторе уведомлений.
firebasenotifications.messages.list Получить список существующих сообщений в композиторе уведомлений.
firebasenotifications.messages.update Обновить существующие сообщения в композиторе уведомлений.

Разрешения Firebase Crashlytics

Имя разрешения Описание
firebasecrashlytics.config.get Получить настройки конфигурации Crashlytics
firebasecrashlytics.config.update Обновить настройки конфигурации Crashlytics
firebasecrashlytics.data.get Получение показателей, связанных с проблемами и сеансами Crashlytics.
firebasecrashlytics.issues.get Получение подробной информации о проблемах Crashlytics, включая примечания, прикрепленные к проблемам.
firebasecrashlytics.issues.list Получить список проблем Crashlytics
firebasecrashlytics.issues.update Открывать, закрывать и отключать существующие проблемы Crashlytics
Обновление примечаний, прикрепленных к проблемам
firebasecrashlytics.sessions.get Получение подробной информации о сеансах сбоя Crashlytics
Имя разрешения Описание
firebasecrash.issues.update Обновляйте существующие проблемы Crashlytics, создавайте заметки о проблемах и устанавливайте оповещения о скорости.
firebasecrash.reports.get Получить существующие отчеты Crashlytics
Имя разрешения Описание
firebasedynamiclinks.domains.create Создание новых доменов динамических ссылок
firebasedynamiclinks.domains.delete Удалить существующие домены Dynamic Links
firebasedynamiclinks.domains.get Получить подробную информацию о существующих доменах Dynamic Links.
firebasedynamiclinks.domains.list Получить список существующих доменов Dynamic Links.
firebasedynamiclinks.domains.update Обновите существующие домены Dynamic Links.
firebasedynamiclinks.links.create Создайте новые динамические ссылки
firebasedynamiclinks.links.get Получить подробную информацию о существующих динамических ссылках
firebasedynamiclinks.links.list Получить список существующих динамических ссылок
firebasedynamiclinks.links.update Обновить существующие динамические ссылки
firebasedynamiclinks.stats.get Получить статистику динамических ссылок
firebasedynamiclinks.destinations.list Получить существующие места назначения динамических ссылок
firebasedynamiclinks.destinations.update Обновите существующие места назначения динамических ссылок.

Разрешения на публикацию расширений Firebase

Имя разрешения Описание
firebaseextensionspublisher.extensions.create Загружать новые версии расширения
firebaseextensionspublisher.extensions.delete Удаление или устаревание версий расширения
firebaseextensionspublisher.extensions.get Получение сведений о версии расширения
firebaseextensionspublisher.extensions.list Список всех версий расширений, загруженных этим проектом издателя.

Разрешения хостинга Firebase

Имя разрешения Описание
firebasehosting.sites.create Создайте новые ресурсы хостинга для проекта Firebase.
firebasehosting.sites.delete Удалить существующие ресурсы хостинга для проекта Firebase.
firebasehosting.sites.get Получить подробную информацию о существующих ресурсах хостинга для проекта Firebase.
firebasehosting.sites.list Получить список ресурсов хостинга для проекта Firebase.
firebasehosting.sites.update Обновите существующие ресурсы хостинга для проекта Firebase.

Разрешения Firebase для обмена сообщениями в приложениях (бета)

Имя разрешения Описание
firebaseinappmessaging.campaigns.create Создавайте новые кампании
firebaseinappmessaging.campaigns.delete Удалить существующие кампании
firebaseinappmessaging.campaigns.get Получить подробную информацию о существующих кампаниях
firebaseinappmessaging.campaigns.list Получить список существующих кампаний
firebaseinappmessaging.campaigns.update Обновить существующие кампании

Разрешения Firebase ML (бета)

Имя разрешения Описание
firebaseml.models.create Создавайте новые модели машинного обучения
firebaseml.models.update Обновите существующие модели машинного обучения
firebaseml.models.delete Удаление существующих моделей машинного обучения
firebaseml.models.get Получить подробную информацию о существующих моделях машинного обучения
firebaseml.models.list Получить список существующих моделей машинного обучения
firebaseml.modelversions.create Создание новых версий модели
firebaseml.modelversions.get Получить подробную информацию о существующих версиях модели
firebaseml.modelversions.list Получить список существующих версий модели
firebaseml.modelversions.update Обновить существующие версии модели

Разрешения для мониторинга производительности Firebase

Имя разрешения Описание
firebase Performance.config.create Создайте новые конфигурации пороговых значений проблем.
firebase Performance.config.delete Удалить существующие конфигурации пороговых значений проблем
firebase Performance.config.update Изменение оповещений и существующих конфигураций пороговых значений проблем.
Firebase Performance.data.get Просматривайте все данные о производительности и выдавайте пороговые значения.

Разрешения базы данных Firebase Realtime

Имя разрешения Описание
firebasedatabase.instances.create Создание новых экземпляров базы данных
firebasedatabase.instances.get Получить метаданные существующих экземпляров базы данных
Доступ только для чтения к данным в существующем экземпляре базы данных.
firebasedatabase.instances.list Получить список существующих экземпляров базы данных
firebasedatabase.instances.update Полный доступ для чтения и записи к данным в существующих экземплярах базы данных.
Включение и отключение экземпляров базы данных
Получение и изменение правил безопасности для существующих экземпляров базы данных.
firebasedatabase.instances.disable Отключить активные экземпляры базы данных

Существующие данные сохраняются, но недоступны для чтения/записи.
firebasedatabase.instances.reenable Повторно включить отключенные экземпляры базы данных

Существующие данные снова доступны для чтения/записи.
firebasedatabase.instances.delete Удалить отключенные экземпляры базы данных

Имена удаленных баз данных нельзя использовать повторно.
Данные в удаленном экземпляре базы данных безвозвратно удаляются через 20 дней.
firebasedatabase.instances.undelete Отменить удаление удаленного экземпляра базы данных до того, как его данные будут удалены без возможности восстановления.

Данные в удаленном экземпляре базы данных безвозвратно удаляются через 20 дней после удаления экземпляра.

Разрешения удаленной конфигурации Firebase

Имя разрешения Описание
Cloudconfig.configs.get Получить данные удаленной конфигурации
Cloudconfig.configs.update Обновить данные удаленной конфигурации

Разрешения лаборатории тестирования Firebase

Лаборатории тестирования требуется доступ к сегментам Cloud Storage, поэтому для нее требуется определенная конфигурация разрешений, которые не все включены в стандартные предопределенные роли Firebase . Чтобы предоставить доступ к Test Lab, используйте один из следующих вариантов:

  • Для тестов, запущенных из консоли Firebase

    • Протестируйте свое приложение в отдельном проекте Firebase.

    • Добавьте участников, которым нужен доступ к тестовой лаборатории, а затем назначьте им роли в устаревшем проекте с помощью консоли Firebase .

      • Чтобы разрешить участнику запускать тесты с помощью Test Lab, назначьте ему редактора проекта или выше.
      • Чтобы разрешить участнику просматривать результаты тестов в Test Lab, назначьте ему средство просмотра проекта или выше.
  • Для тестов, запущенных из интерфейса командной строки gcloud , API тестирования или управляемых устройств Gradle с использованием собственного сегмента облачного хранилища.

    • Назначьте пару предопределенных ролей (которые вместе предоставляют необходимый набор разрешений) с помощью консоли Google Cloud .

      • Чтобы разрешить участнику запускать тесты с помощью Test Lab, назначьте оба:

        • Администратор лаборатории тестирования Firebase ( roles/cloudtestservice.testAdmin )
        • Средство просмотра Firebase Analytics ( roles/firebase.analyticsViewer )
      • Чтобы разрешить участнику просматривать результаты тестов в Test Lab, назначьте оба:

        • Средство просмотра Firebase Test Lab ( roles/cloudtestservice.testViewer )
        • Средство просмотра Firebase Analytics ( roles/firebase.analyticsViewer )
Имя разрешения Описание
Cloudtestservice.environmentcatalog.get Получить каталог поддерживаемых тестовых сред для проекта.
Cloudtestservice.matrices.create Запрос на запуск матрицы тестов по заданным спецификациям
Cloudtestservice.matrices.get Получить статус тестовой матрицы
Cloudtestservice.matrices.update Обновление незавершенной тестовой матрицы
Cloudtoolresults.executions.list Получить список казней для истории
Cloudtoolresults.executions.get Получить существующее выполнение
Cloudtoolresults.executions.create Создать новое исполнение
Cloudtoolresults.executions.update Обновить существующее выполнение
Cloudtoolresults.histories.list Получить список историй
Cloudtoolresults.histories.get Получить существующую историю
Cloudtoolresults.histories.create Создать новую историю
Cloudtoolresults.settings.create Создать новые настройки результатов инструмента
Cloudtoolresults.settings.get Получить существующие настройки результатов инструмента
Cloudtoolresults.settings.update Обновить настройки результатов инструмента
Cloudtoolresults.steps.list Получить список шагов для выполнения
Cloudtoolresults.steps.get Получить существующий шаг
Cloudtoolresults.steps.create Создать новый шаг
Cloudtoolresults.steps.update Обновить существующий шаг

Интеграция с разрешениями внешних служб

Имя разрешения Описание
firebaseextensions.configs.create Создайте новые конфигурации расширений для внешних служб.
(Консоль Firebase > Настройки проекта > Интеграции)
firebaseextensions.configs.delete Удалить существующие конфигурации расширений для внешних служб.
(Консоль Firebase > Настройки проекта > Интеграции)
firebaseextensions.configs.list Получить список конфигураций расширений для внешних служб.
(Консоль Firebase > Настройки проекта > Интеграции)
firebaseextensions.configs.update Обновите существующие конфигурации расширений для внешних служб.
(Консоль Firebase > Настройки проекта > Интеграции)