Разрешения 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. monitoring.timeSeries.list
Выполните команды Firebase CLI
Для получения более подробной информации обратитесь к документации Google Cloud по доступу к конфигуратору среды выполнения .
runtimeconfig.*

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

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

Разрешения на управление и связанные с ними действия Требуется дополнительное разрешение
firebase.billingPlans.update
Изменить тарифный план для проекта Firebase resourcemanager.projects.createBillingAssignment
resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
Удалить проект Firebase resourcemanager.projects.delete
firebase.projects.update
Добавьте ресурсы Firebase в существующий проект Google Cloud . resourcemanager.projects.get
serviceusage.services.enable
serviceusage.services.get
Изменить название проекта Firebase resourcemanager.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 Management

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

Имя разрешения Описание
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.googleAnalyticsEdit По умолчанию предоставляет связанному свойству Analytics роль редактора Analytics .
firebaseanalytics.resources.googleAnalyticsAdditionalAccess По умолчанию предоставляет связанному свойству Analytics роль «Маркетовик Analytics .
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze По умолчанию предоставляет связанному свойству Analytics роль «Просмотрщик Analytics .
firebaseanalytics.resources.googleAnalyticsRestrictedAccess По умолчанию связанному ресурсу Analytics предоставляется роль «Просмотрщик Analytics без доступа к данным о доходах и затратах.

Разрешения Firebase AI Logic

Имя разрешения Описание
firebasevertexai.configs.get Получение конфигурации для Firebase AI Logic
firebasevertexai.configs.update Обновите конфигурацию для Firebase AI Logic.

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 для приложения.
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

Имя разрешения Описание
firebaseperformance.config.create Создание новых настроек пороговых значений для проблем
firebaseperformance.config.delete Удалите существующие настройки пороговых значений для проблем.
firebaseperformance.config.update Измените настройки пороговых значений для оповещений и существующих проблем.
firebaseperformance.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.undelet Восстановить удаленный экземпляр базы данных до того, как его данные будут безвозвратно удалены.

Данные в удаленном экземпляре базы данных удаляются безвозвратно через 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 , назначьте ему проект « Просмотрщик » или выше.
  • Для тестов, запущенных из CLI gcloud , Testing API или управляемых устройств Gradle при использовании собственного сегмента Cloud Storage

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

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

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

        • Firebase Test Lab Viewer ( roles/cloudtestservice.testViewer )
        • Firebase Analytics Viewer ( 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 > Настройки проекта > Интеграции)