Разрешения 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

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

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

Разрешения Firebase App Check

Имя разрешения Описание
firebaseappcheck.appAttestConfig.get Получение конфигурации App Attest приложения.
firebaseappcheck.appAttestConfig.update Обновите конфигурацию App Attest приложения.
firebaseappcheck.appCheckTokens.verify Проверка токенов App Check , выданных для проекта 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 App Distribution

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

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

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

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

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

Разрешения Firebase App Hosting (бета-версия)

Имя разрешения Описание
firebaseapphosting.backends.create Создайте новый сервер App Hosting для проекта Firebase.
firebaseapphosting.backends.delete Удалите существующую серверную часть App Hosting из проекта Firebase.
firebaseapphosting.backends.get Получите информацию о конкретном сервере App Hosting в проекте Firebase.
firebaseapphosting.backends.list Перечислите все доступные серверные части App Hosting в проекте Firebase.
firebaseapphosting.backends.update Измените конфигурацию или настройки существующей серверной части App Hosting .
firebaseapphosting.builds.create Инициируйте новый процесс сборки серверной части App Hosting в проекте Firebase.
firebaseapphosting.builds.delete Удалите существующие сборки в серверной части App Hosting .
firebaseapphosting.builds.get Получите сведения о существующей сборке в серверной части App Hosting .
firebaseapphosting.builds.list Перечислите все сборки, связанные с серверной частью App Hosting в проекте Firebase.
firebaseapphosting.builds.update Измените конфигурацию существующей незавершенной сборки App Hosting .
firebaseapphosting.domains.create Создайте новую ассоциацию домена для серверной части App Hosting в проекте Firebase.
firebaseapphosting.domains.delete Удалите ассоциацию домена из серверной части App Hosting .
firebaseapphosting.domains.get Получите информацию о конкретном домене, связанном с сайтом App Hosting .
firebaseapphosting.domains.list Перечислите все домены, связанные с App Hosting .
firebaseapphosting.domains.update Измените настройки или конфигурации домена, связанного с серверной частью App Hosting .
firebaseapphosting.rollouts.create Запустите новое развертывание, чтобы перевести существующую сборку в текущую обслуживаемую версию для этого серверного компонента App Hosting .
firebaseapphosting.rollouts.get Получите информацию о конкретном развертывании App Hosting .
firebaseapphosting.rollouts.list Перечислите все развертывания, связанные с серверной частью App Hosting .
firebaseapphosting.traffic.get Получите текущую политику разделения трафика и развертывания для сайта App Hosting .
firebaseapphosting.traffic.list По функциям идентичен `firebaseapphosting.traffic.get`, с добавленной возможностью получения списка через серверные части, для которых у вас есть это разрешение.
firebaseapphosting.traffic.update Измените текущую политику разделения и развертывания трафика для серверной части App Hosting .

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

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

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

Список и описание разрешений 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 Исходники проверки на корректность

Cloud Functions for Firebase

Список и описания разрешений Cloud Functions см. в документации 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 Создание новых доменов Dynamic Links
firebasedynamiclinks.domains.delete Удалить существующие домены Dynamic Links
firebasedynamiclinks.domains.get Получить подробную информацию о существующих доменах Dynamic Links .
firebasedynamiclinks.domains.list Получить список существующих доменов Dynamic Links .
firebasedynamiclinks.domains.update Обновите существующие домены Dynamic Links .
firebasedynamiclinks.links.create Создание новых Dynamic Links
firebasedynamiclinks.links.get Получить подробную информацию о существующих Dynamic Links
firebasedynamiclinks.links.list Получить список существующих Dynamic Links
firebasedynamiclinks.links.update Обновить существующие Dynamic Links
firebasedynamiclinks.stats.get Получить статистику Dynamic Links
firebasedynamiclinks.destinations.list Получить существующие места назначения Dynamic Links
firebasedynamiclinks.destinations.update Обновите существующие места назначения Dynamic Links .

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

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

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

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

Разрешения Firebase In-App Messaging (бета)

Имя разрешения Описание
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 Performance Monitoring

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

Разрешения Firebase Realtime Database

Имя разрешения Описание
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 Remote Config

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

Разрешения Firebase Test Lab

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

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

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

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

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

    • Назначьте пару предопределенных ролей (которые вместе предоставляют необходимый набор разрешений) с помощью консоли 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 > Настройки проекта > Интеграции)