Permissões IAM do Firebase

As permissões são concedidas aos membros do seu projeto por meio de funções . Uma função é uma coleção de permissões. Ao atribuir uma função a um membro do projeto, você concede a esse membro do projeto todas as permissões contidas na função.

Esta página descreve as ações habilitadas por permissões que você pode encontrar listadas em uma função compatível com o Firebase. Essas permissões se enquadram em duas categorias:

Permissões necessárias

Firebase IAM inclui permissões que são:

Para obter uma lista geral e uma descrição das permissões específicas de um produto ou serviço do Firebase, consulte a seção apropriada em Permissões de IAM específicas do produto do Firebase .

Permissões necessárias incluídas em todas as funções

As permissões listadas na tabela a seguir são necessárias para usar qualquer produto ou serviço do Firebase.

Essas permissões são incluídas automaticamente em cada uma das funções predefinidas do Firebase .

Permissão Descrição
Concede permissões para recuperar informações do projeto do Firebase
Concede permissões para recuperar informações do projeto do Firebase
Concede permissões para verificar o estado das APIs do Google e executar comandos da Firebase CLI

Permissões necessárias para ações específicas do serviço do Firebase

As permissões listadas na tabela a seguir são necessárias para realizar algumas ações específicas do serviço do Firebase.

Quando necessário, essas permissões são incluídas automaticamente em cada uma das funções predefinidas do Firebase .

Ação Permissão necessária
Acesse integrações de projetos do Firebase com ferramentas de colaboração (incluindo Slack, Jira e PagerDuty) firebaseextensions.configs.*
Veja o uso e as análises do StackDriver monitoramento.timeSeries.list
Execute comandos da CLI do Firebase
Para obter mais informações, consulte a documentação do Google Cloud sobre o Runtime Configurator Access .
runtimeconfig.*

Permissões necessárias para ações específicas de gerenciamento do Firebase

As permissões listadas na tabela a seguir são permissões adicionais necessárias para executar algumas ações específicas de gerenciamento do Firebase.

Permissão de gerenciamento e ações associadas Permissão adicional necessária
firebase.billingPlans.update
Alterar o plano de faturamento de um projeto do Firebase resourcemanager.projects.createBillingAssignment
resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
Excluir um projeto do Firebase gerenciador de recursos.projects.delete
firebase.projects.update
Adicionar recursos do Firebase a um projeto existente do Google Cloud gerenciador de recursos.projects.get
serviceusage.services.enable
serviceusage.services.get
Alterar o nome de um projeto do Firebase gerenciador de recursos.projects.update
Adicionar impressões digitais de certificados SHA para aplicativos Android clientauthconfig.clients.create
Remover impressões digitais de certificados SHA para aplicativos Android clientauthconfig.clients.delete
Atualizar ID da App Store ou Team ID para aplicativos Apple clientauthconfig.clients.get
clientauthconfig.clients.update

Permissões de IAM específicas do produto Firebase

As tabelas a seguir listam as permissões específicas de um produto ou serviço do Firebase. Você pode usar essas permissões para criar funções personalizadas .

Permissões de gerenciamento do Firebase

Observe que algumas das permissões de gerenciamento a seguir exigem permissões adicionais para determinadas ações .

Nome da permissão Descrição
firebase.billingPlans.get Recuperar o plano de faturamento atual do Firebase para um projeto
firebase.billingPlans.update Alterar o plano de faturamento atual do Firebase para um projeto
firebase.clients.create Adicionar novos aplicativos a um projeto
firebase.clients.delete Excluir aplicativos existentes de um projeto
firebase.clients.get Recuperar detalhes e configurações de aplicativos em um projeto
firebase.clients.list Recuperar uma lista de aplicativos em um projeto
firebase.clients.undelete Recuperar um aplicativo excluído antes que seus dados sejam excluídos permanentemente
firebase.clients.update Atualizar detalhes e configurações de aplicativos em um projeto
firebase.links.create Crie novos links para sistemas do Google
(Firebase console > Configurações do projeto > Integrações)
firebase.links.delete Excluir links para sistemas do Google
(Firebase console > Configurações do projeto > Integrações)
firebase.links.list Recuperar uma lista de links para sistemas do Google
(Firebase console > Configurações do projeto > Integrações)
firebase.links.update Atualizar links existentes para sistemas do Google
(Firebase console > Configurações do projeto > Integrações)
firebase.playLinks.get Recuperar detalhes sobre um link para o Google Play
(Firebase console > Configurações do projeto > Integrações > Google Play)
firebase.playLinks.list Recuperar uma lista de links para o Google Play
(Firebase console > Configurações do projeto > Integrações > Google Play)
firebase.playLinks.update Crie novos links e atualize os links existentes para o Google Play
(Firebase console > Configurações do projeto > Integrações > Google Play)
firebase.projects.delete Excluir projetos existentes
firebase.projects.get Recuperar detalhes e recursos do Firebase para um projeto
firebase.projects.update Modifique os atributos de um projeto existente
Receba alertas sobre produtos e recursos aplicáveis ​​do Firebase ( saiba mais )
firebaseinstallations.instances.delete Exclua um ID de instalação do Firebase e os dados vinculados a essa instalação ( saiba mais )

Permissões do Google Analytics

As permissões a seguir concedem acesso à propriedade do Analytics vinculada ao projeto do Firebase. Eles permitem que os membros do projeto Firebase acessem dados do Analytics, incluindo públicos, propriedades do usuário, funis, relatórios, conversões, etc.

Nome da permissão Descrição
firebaseanalytics.resources.googleAnalytics Por padrão, concede a função de Editor do Analytics à propriedade vinculada do Analytics
firebaseanalytics.resources.googleAnalyticsAdditionalAccess Por padrão, concede a função Analytics Marketer à propriedade vinculada do Analytics
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze Por padrão, concede a função de Visualizador do Analytics à propriedade vinculada do Analytics
firebaseanalytics.resources.googleAnalyticsRestrictedAccess Por padrão, concede a função de Visualizador do Analytics à propriedade vinculada do Analytics sem acesso aos dados de receita e de custo

Permissões de verificação do aplicativo Firebase

Nome da permissão Descrição
firebaseappcheck.appAttestConfig.get Recuperar a configuração do App Attest de um aplicativo
firebaseappcheck.appAttestConfig.update Atualizar a configuração do App Attest de um aplicativo
firebaseappcheck.appCheckTokens.verify Verifique os tokens do App Check emitidos para um projeto do Firebase
firebaseappcheck.debugTokens.get Recuperar tokens de depuração de um aplicativo
firebaseappcheck.debugTokens.update Criar, atualizar ou excluir tokens de depuração de um aplicativo
firebaseappcheck.deviceCheckConfig.get Recuperar a configuração do DeviceCheck de um aplicativo
firebaseappcheck.deviceCheckConfig.update Atualizar a configuração do DeviceCheck de um aplicativo
firebaseappcheck.playIntegrityConfig.get Recuperar a configuração do Play Integrity de um app
firebaseappcheck.playIntegrityConfig.update Atualizar a configuração do Play Integrity de um app
firebaseappcheck.recaptchaEnterpriseConfig.get Recuperar a configuração do reCAPTCHA Enterprise de um aplicativo
firebaseappcheck.recaptchaEnterpriseConfig.update Atualizar a configuração do reCAPTCHA Enterprise de um aplicativo
firebaseappcheck.recaptchaV3Config.get Recuperar a configuração do reCAPTCHA v3 de um aplicativo
firebaseappcheck.recaptchaV3Config.update Atualizar a configuração do reCAPTCHA v3 de um aplicativo
firebaseappcheck.safetyNetConfig.get Recuperar a configuração SafetyNet de um aplicativo
firebaseappcheck.safetyNetConfig.update Atualizar a configuração SafetyNet de um aplicativo
firebaseappcheck.services.get Recuperar configurações de aplicação de serviço de um projeto
firebaseappcheck.services.update Atualizar configurações de aplicação de serviço de um projeto

Permissões do Firebase App Distribution

Nome da permissão Descrição
firebaseappdistro.releases.list Recuperar uma lista de distribuições existentes e links de convite
firebaseappdistro.releases.update Criar, excluir e modificar distribuições
Criar e excluir links de convite
firebaseappdistro.testers.list Recuperar uma lista de testadores existentes em um projeto
firebaseappdistro.testers.update Criar e excluir testadores em um projeto
firebaseappdistro.groups.list Recuperar uma lista de grupos de testadores existentes em um projeto
firebaseappdistro.groups.update Criar e excluir grupos de testadores em um projeto

Permissões de autenticação do Firebase

Nome da permissão Descrição
firebaseauth.configs.create Crie a configuração de autenticação
firebaseauth.configs.get Recuperar a configuração de autenticação
firebaseauth.configs.getHashConfig Obtenha a configuração do hash de senha e o hash de senha das contas de usuário
firebaseauth.configs.getSecret Obtenha o segredo do cliente na configuração de autenticação
firebaseauth.configs.update Atualizar a configuração de autenticação existente
firebaseauth.users.create Crie novos usuários em autenticação
firebaseauth.users.createSession Criar cookie de sessão para um usuário logado
firebaseauth.users.delete Exclua usuários existentes na autenticação
firebaseauth.users.get Recuperar uma lista de usuários de autenticação existentes
firebaseauth.users.sendEmail Envie e-mails para os usuários
firebaseauth.users.update Atualizar usuários existentes na autenticação

Permissões do teste A/B do Firebase (beta)

Nome da permissão Descrição
firebaseabt.experimentresults.get Recuperar os resultados de um experimento
firebaseabt.experiments.create Crie novos experimentos
firebaseabt.experiments.delete Excluir experimentos existentes
firebaseabt.experiments.get Recuperar detalhes de um experimento existente
firebaseabt.experiments.list Recuperar uma lista de experimentos existentes
firebaseabt.experiments.update Atualizar uma experiência existente
firebaseabt.projectmetadata.get Recuperar metadados analíticos para configurar um experimento

Permissões do Cloud Firestore

Para obter uma lista e descrições das permissões do Cloud Firestore, consulte a documentação do Google Cloud .

Permissões do Cloud Storage

Para obter uma lista e descrições das permissões do Cloud Storage, consulte a documentação do Google Cloud .

Permissões das regras de segurança do Firebase (Cloud Firestore e Cloud Storage)

Nome da permissão Descrição
firebaserules.releases.create Criar lançamentos
firebaserules.releases.delete Excluir lançamentos
firebaserules.releases.get Recuperar lançamentos
firebaserules.releases.getExecutable Recuperar as cargas binárias executáveis ​​para lançamentos
firebaserules.releases.list Recuperar uma lista de lançamentos
firebaserules.releases.update Atualizar referências de conjunto de regras para versões
firebaserules.rulesets.create Crie novos conjuntos de regras
firebaserules.rulesets.delete Excluir conjunto de regras existente
firebaserules.rulesets.get Recuperar conjuntos de regras com origem
firebaserules.rulesets.list Encontre metadados do conjunto de regras (sem fonte)
firebaserules.rulesets.test Fontes de teste para correção

Permissões do Cloud Functions para Firebase

Para obter uma lista e descrições das permissões do Cloud Functions, consulte a documentação do IAM .

Esteja ciente de que a implantação de funções requer uma configuração específica de permissões que não estão incluídas nas funções predefinidas padrão do Firebase . Para implantar funções, use uma das seguintes opções:

Permissões de campanhas de mensagens do Firebase

Essas permissões se aplicam a campanhas do Firebase Cloud Messaging e do Firebase In-App Messaging.

Nome da permissão Descrição
firebasemessagingcampaigns.campaigns.create Crie novas campanhas
firebasemessagingcampaigns.campaigns.delete Excluir campanhas existentes
firebasemessagingcampaigns.campaigns.get Recuperar detalhes de campanhas existentes
firebasemessagingcampaigns.campaigns.list Recuperar uma lista de campanhas existentes
firebasemessagingcampaigns.campaigns.update Atualizar campanhas existentes
firebasemessagingcampaigns.campaigns.start Iniciar campanhas existentes
firebasemessagingcampaigns.campaigns.stop Atualizar campanhas existentes

Permissões do Firebase Cloud Messaging

Nome da permissão Descrição
nuvemmessaging.messages.create Envie notificações e mensagens de dados por meio da API HTTP do FCM e do Admin SDK
Nome da permissão Descrição
firebasenotifications.messages.create Crie novas mensagens no compositor de notificações
firebasenotifications.messages.delete Exclua mensagens existentes no compositor do Notificações
firebasenotifications.messages.get Recuperar detalhes de mensagens existentes no compositor de Notificações
firebasenotifications.messages.list Recuperar uma lista de mensagens existentes no compositor de Notificações
firebasenotifications.messages.update Atualizar mensagens existentes no compositor de Notificações

Permissões do Firebase Crashlytics

Nome da permissão Descrição
firebasecrashlytics.config.get Recuperar definições de configuração do Crashlytics
firebasecrashlytics.config.update Atualizar as configurações do Crashlytics
firebasecrashlytics.data.get Recuperar métricas associadas a problemas e sessões do Crashlytics
firebasecrashlytics.issues.get Recuperar detalhes sobre problemas do Crashlytics, incluindo notas anexadas aos problemas
firebasecrashlytics.issues.list Recuperar uma lista de problemas do Crashlytics
firebasecrashlytics.issues.update Abrir, fechar e silenciar problemas existentes do Crashlytics
Notas de atualização anexadas aos problemas
firebasecrashlytics.sessions.get Recuperar detalhes sobre sessões de falha do Crashlytics
Nome da permissão Descrição
firebasecrash.issues.update Atualize problemas existentes do Crashlytics, crie notas sobre problemas e defina alertas de velocidade
firebasecrash.reports.get Recuperar relatórios existentes do Crashlytics
Nome da permissão Descrição
firebasedynamiclinks.domains.create Crie novos domínios de Dynamic Links
firebasedynamiclinks.domains.delete Excluir domínios Dynamic Links existentes
firebasedynamiclinks.domains.get Recuperar detalhes de domínios Dynamic Links existentes
firebasedynamiclinks.domains.list Recuperar uma lista de domínios Dynamic Links existentes
firebasedynamiclinks.domains.update Atualizar domínios Dynamic Links existentes
firebasedynamiclinks.links.create Crie novos links dinâmicos
firebasedynamiclinks.links.get Recuperar detalhes de links dinâmicos existentes
firebasedynamiclinks.links.list Recuperar uma lista de links dinâmicos existentes
firebasedynamiclinks.links.update Atualizar links dinâmicos existentes
firebasedynamiclinks.stats.get Recuperar estatísticas de links dinâmicos
firebasedynamiclinks.destinations.list Recuperar destinos de Dynamic Links existentes
firebasedynamiclinks.destinations.update Atualizar destinos de Dynamic Links existentes

Permissões de publicação de extensões do Firebase

Nome da permissão Descrição
firebaseextensionspublisher.extensions.create Carregar novas versões de uma extensão
firebaseextensionspublisher.extensions.delete Excluir ou descontinuar versões de uma extensão
firebaseextensionspublisher.extensions.get Recuperar detalhes sobre uma versão de extensão
firebaseextensionspublisher.extensions.list Listar todas as versões de extensão enviadas por este projeto de editor

Permissões do Firebase Hosting

Nome da permissão Descrição
firebasehosting.sites.create Crie novos recursos de hospedagem para um projeto do Firebase
firebasehosting.sites.delete Excluir recursos de hospedagem existentes para um projeto do Firebase
firebasehosting.sites.get Recuperar detalhes de recursos de hospedagem existentes para um projeto do Firebase
firebasehosting.sites.list Recuperar uma lista de recursos de hospedagem para um projeto do Firebase
firebasehosting.sites.update Atualizar recursos de hospedagem existentes para um projeto do Firebase

Permissões do Firebase In-App Messaging (beta)

Nome da permissão Descrição
firebaseinappmessaging.campaigns.create Crie novas campanhas
firebaseinappmessaging.campaigns.delete Excluir campanhas existentes
firebaseinappmessaging.campaigns.get Recuperar detalhes de campanhas existentes
firebaseinappmessaging.campaigns.list Recuperar uma lista de campanhas existentes
firebaseinappmessaging.campaigns.update Atualizar campanhas existentes

Permissões do Firebase ML (beta)

Nome da permissão Descrição
firebaseml.models.create Crie novos modelos de ML
firebaseml.models.update Atualizar modelos de ML existentes
firebaseml.models.delete Excluir modelos de ML existentes
firebaseml.models.get Recuperar detalhes de modelos de ML existentes
firebaseml.models.list Recuperar uma lista de modelos de ML existentes
firebaseml.modelversions.create Criar novas versões de modelo
firebaseml.modelversions.get Recuperar detalhes de versões de modelos existentes
firebaseml.modelversions.list Recuperar uma lista de versões de modelos existentes
firebaseml.modelversions.update Atualizar versões de modelos existentes

Permissões do Monitoramento de desempenho do Firebase

Nome da permissão Descrição
firebaseperformance.config.create Criar novas configurações de limite de problemas
firebaseperformance.config.delete Excluir configurações de limites de problemas existentes
firebaseperformance.config.update Modificar configurações de limites de alertas e problemas existentes
firebaseperformance.data.get Visualize todos os dados de desempenho e emita valores limite

Permissões do Firebase Realtime Database

Nome da permissão Descrição
firebasedatabase.instances.create Crie novas instâncias de banco de dados
firebasedatabase.instances.get Recuperar os metadados de instâncias de banco de dados existentes
Acesso somente leitura aos dados em uma instância de banco de dados existente
firebasedatabase.instances.list Recuperar uma lista de instâncias de banco de dados existentes
firebasedatabase.instances.update Acesso total de leitura e gravação aos dados em instâncias de banco de dados existentes
Habilitar e desabilitar instâncias de banco de dados
Recuperar e modificar regras de segurança para instâncias de banco de dados existentes
firebasedatabase.instances.disable Desabilitar instâncias de banco de dados ativas

Os dados existentes são mantidos, mas não ficam acessíveis para leitura/gravação.
firebasedatabase.instances.reenable Reativar instâncias de banco de dados desativadas

Os dados existentes estão novamente acessíveis para leitura/gravação.
firebasedatabase.instances.delete Excluir instâncias de banco de dados desabilitadas

Os nomes de bancos de dados excluídos não podem ser reutilizados.
Os dados em uma instância de banco de dados excluída são excluídos permanentemente após 20 dias.
firebasedatabase.instances.undelete Recuperar uma instância de banco de dados excluída antes que seus dados sejam excluídos permanentemente

Os dados em uma instância de banco de dados excluída são excluídos permanentemente 20 dias após a exclusão da instância.

Permissões da Configuração remota do Firebase

Nome da permissão Descrição
cloudconfig.configs.get Recuperar dados do Configuração remota
cloudconfig.configs.update Atualizar dados do Configuração remota

Permissões do Firebase Test Lab

O Test Lab requer acesso aos buckets do Cloud Storage, portanto, requer uma configuração específica de permissões que não estão todas incluídas nas funções predefinidas padrão do Firebase . Para conceder acesso ao Test Lab, use uma das seguintes opções:

  • Para testes iniciados no console do Firebase

    • Teste seu aplicativo em um projeto separado e dedicado do Firebase.

    • Adicione membros que precisam de acesso ao Test Lab e atribua a eles funções de projeto legado usando o Firebase console .

      • Para permitir que um membro execute testes com o Test Lab, atribua o Editor do projeto ou superior.
      • Para permitir que um membro visualize os resultados do teste no Test Lab, atribua o visualizador do projeto ou superior.
  • Para testes iniciados na CLI gcloud , na API Testing ou em dispositivos gerenciados Gradle enquanto você usa seu próprio bucket do Cloud Storage

    • Atribua um par de funções predefinidas (que juntas concedem o conjunto necessário de permissões) usando o console do Google Cloud .

      • Para permitir que um membro execute testes com o Test Lab, atribua ambos:

        • Administrador do Firebase Test Lab ( roles/cloudtestservice.testAdmin )
        • Visualizador do Firebase Analytics ( roles/firebase.analyticsViewer )
      • Para permitir que um membro visualize os resultados do teste no Test Lab, atribua ambos:

        • Visualizador do Firebase Test Lab ( roles/cloudtestservice.testViewer )
        • Visualizador do Firebase Analytics ( roles/firebase.analyticsViewer )
Nome da permissão Descrição
cloudtestservice.environmentcatalog.get Recuperar o catálogo de ambientes de teste suportados para um projeto
cloudtestservice.matrices.create Solicitação para executar uma matriz de testes de acordo com as especificações fornecidas
cloudtestservice.matrices.get Recuperar o status de uma matriz de teste
cloudtestservice.matrices.update Atualizar uma matriz de teste inacabada
cloudtoolresults.executions.list Recuperar uma lista de execuções para um histórico
cloudtoolresults.executions.get Recuperar uma execução existente
cloudtoolresults.executions.create Crie uma nova execução
cloudtoolresults.executions.update Atualizar uma execução existente
cloudtoolresults.histories.list Recuperar uma lista de históricos
cloudtoolresults.histories.get Recuperar um histórico existente
cloudtoolresults.histories.create Crie um novo histórico
cloudtoolresults.settings.create Criar novas configurações de resultados de ferramentas
cloudtoolresults.settings.get Recuperar configurações de resultados de ferramentas existentes
cloudtoolresults.settings.update Atualizar configurações de resultados da ferramenta
cloudtoolresults.steps.list Recuperar uma lista de etapas para uma execução
cloudtoolresults.steps.get Recuperar uma etapa existente
cloudtoolresults.steps.create Crie uma nova etapa
cloudtoolresults.steps.update Atualizar uma etapa existente

Integrações com permissões de serviços externos

Nome da permissão Descrição
firebaseextensions.configs.create Crie novas configurações de extensão para serviços externos
(Firebase console > Configurações do projeto > Integrações)
firebaseextensions.configs.delete Excluir configurações de extensão existentes para serviços externos
(Firebase console > Configurações do projeto > Integrações)
firebaseextensions.configs.list Recuperar uma lista de configurações de extensão para serviços externos
(Firebase console > Configurações do projeto > Integrações)
firebaseextensions.configs.update Atualizar configurações de extensão existentes para serviços externos
(Firebase console > Configurações do projeto > Integrações)