Confira as novidades do Firebase anunciadas no Google I/O 2022. Saiba mais

Permissões do Firebase IAM

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

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 que a função contém.

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

Permissões necessárias

O Firebase IAM inclui permissões que são:

Para obter uma lista geral e uma descrição de permissões específicas para um produto ou serviço Firebase, consulte a seção apropriada em Permissões IAM específicas do produto 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 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 Firebase
Concede permissões para recuperar informações do projeto Firebase
Concede permissões para verificar o estado das APIs do Google e para executar comandos Firebase CLI

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

As permissões listadas na tabela a seguir são necessárias para executar algumas ações específicas do serviço 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
Executar comandos da CLI do Firebase
Para obter mais informações, consulte a documentação do Google Cloud sobre 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 cobrança de um projeto do Firebase resourcemanager.projects.createBillingAssignment
resourcemanager.projects.deleteBillingAssignment
firebase.projects.delete
Excluir um projeto do Firebase resourcemanager.projects.delete
firebase.projects.update
Adicionar recursos do Firebase a um projeto existente do Google Cloud resourcemanager.projects.get
serviceusage.services.enable
serviceusage.services.get
Alterar o nome de um projeto do Firebase resourcemanager.projects.update
Adicionar impressões digitais de certificado SHA para aplicativos Android clientauthconfig.clients.create
Remova as impressões digitais do certificado SHA para aplicativos Android clientauthconfig.clients.delete
Atualize o ID da App Store ou o ID da equipe para aplicativos da Apple clientauthconfig.clients.get
clientauthconfig.clients.update

Permissões 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 seguintes permissões de gerenciamento requerem permissões adicionais para determinadas ações .

Nome da permissão Descrição
firebase.billingPlans.get Recupere 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 Recupere detalhes e configurações de aplicativos em um projeto
firebase.clients.list Recuperar uma lista de aplicativos em um projeto
firebase.clients.undelete Recupere 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 os 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 Recupere uma lista de links para os sistemas do Google
(Firebase console > Configurações do projeto > Integrações)
firebase.links.update Atualize os links existentes para os 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 Recupere 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 Recupere detalhes e recursos do Firebase para um projeto
firebase.projects.update Modifique os atributos de um projeto existente
Receba alertas para 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 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.googleAnalyticsEditar Por padrão, concede a função de Editor de Analytics à propriedade de Analytics vinculada
firebaseanalytics.resources.googleAnalyticsAdditionalAccess Por padrão, concede a função de comerciante do Analytics à propriedade vinculada do Analytics
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze Por padrão, concede a função Visualizador do Analytics à propriedade vinculada do Analytics
firebaseanalytics.resources.googleAnalyticsRestrictedAccess Por padrão, concede o papel de visualizador do Analytics à propriedade vinculada do Analytics sem acesso aos dados de receita e dados de custo

Permissões de verificação de aplicativos do Firebase

Nome da permissão Descrição
firebaseappcheck.appAttestConfig.get Recuperar a configuração do App Attest de um aplicativo
firebaseappcheck.appAttestConfig.update Atualize a configuração do App Attest de um aplicativo
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 Recupere a configuração do DeviceCheck de um aplicativo
firebaseappcheck.deviceCheckConfig.update Atualize a configuração do DeviceCheck de um aplicativo
firebaseappcheck.playIntegrityConfig.get Recupere a configuração do Play Integrity de um app
firebaseappcheck.playIntegrityConfig.update Atualizar a configuração do Play Integrity de um aplicativo
firebaseappcheck.recaptchaEnterpriseConfig.get Recupere a configuração do reCAPTCHA Enterprise de um aplicativo
firebaseappcheck.recaptchaEnterpriseConfig.update Atualize a configuração do reCAPTCHA Enterprise de um aplicativo
firebaseappcheck.recaptchaV3Config.get Recupere a configuração reCAPTCHA v3 de um aplicativo
firebaseappcheck.recaptchaV3Config.update Atualize a configuração do reCAPTCHA v3 de um aplicativo
firebaseappcheck.safetyNetConfig.get Recupere a configuração SafetyNet de um aplicativo
firebaseappcheck.safetyNetConfig.update Atualize 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 Recupere 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 Recupere uma lista de testadores existentes em um projeto
firebaseappdistro.testers.update Criar e excluir testadores em um projeto
firebaseappdistro.groups.list Recupere uma lista de grupos de testadores existentes em um projeto
firebaseappdistro.groups.update Criar e excluir grupos de testadores em um projeto

Permissões do Firebase Authentication

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

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

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

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 de armazenamento em nuvem

Para obter uma lista e descrições de 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 Recupere os payloads executáveis ​​binários para lançamentos
firebaserules.releases.list Recupere uma lista de lançamentos
firebaserules.releases.update Atualize as referências do conjunto de regras para lançamentos
firebaserules.rulesets.create Criar novos conjuntos de regras
firebaserules.rulesets.delete Excluir conjunto de regras existente
firebaserules.rulesets.get Recuperar conjuntos de regras com fonte
firebaserules.rulesets.list Encontrar 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 do Firebase Cloud Messaging

Nome da permissão Descrição
cloudmessaging.messages.create Envie notificações e mensagens de dados por meio da API HTTP do FCM e do Admin SDK
firebasenotifications.messages.create Crie novas mensagens no compositor de Notificações
firebasenotifications.messages.delete Excluir mensagens existentes no compositor de Notificações
firebasenotifications.messages.get Recupere detalhes de mensagens existentes no compositor de Notificações
firebasenotifications.messages.list Recupere uma lista de mensagens existentes no compositor de Notificações
firebasenotifications.messages.update Atualize as 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 configurações do Crashlytics
firebasecrashlytics.data.get Recupere métricas associadas a problemas e sessões do Crashlytics
firebasecrashlytics.issues.get Recupere detalhes sobre problemas do Crashlytics, incluindo notas anexadas aos problemas
firebasecrashlytics.issues.list Recupere uma lista de problemas do Crashlytics
firebasecrashlytics.issues.update Abrir, fechar e silenciar problemas existentes do Crashlytics
Atualizar notas anexadas a problemas
firebasecrashlytics.sessions.get Recuperar detalhes sobre as sessões de travamento do Crashlytics
Nome da permissão Descrição
firebasecrash.issues.update Atualize os problemas existentes do Crashlytics, crie notas sobre os problemas e defina alertas de velocidade
firebasecrash.reports.get Recuperar relatórios existentes do Crashlytics
Nome da permissão Descrição
firebasedynamiclinks.domains.create Criar novos domínios de links dinâmicos
firebasedynamiclinks.domains.delete Excluir domínios de links dinâmicos existentes
firebasedynamiclinks.domains.get Recupere detalhes de domínios de links dinâmicos existentes
firebasedynamiclinks.domains.list Recupere uma lista de domínios de links dinâmicos existentes
firebasedynamiclinks.domains.update Atualizar domínios de links dinâmicos existentes
firebasedynamiclinks.links.create Criar novos links dinâmicos
firebasedynamiclinks.links.get Recupere detalhes de links dinâmicos existentes
firebasedynamiclinks.links.list Recupere 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 links dinâmicos existentes
firebasedynamiclinks.destinations.update Atualizar destinos de links dinâmicos existentes

Permissões de hospedagem do Firebase

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 Recupere detalhes de recursos de hospedagem existentes para um projeto do Firebase
firebasehosting.sites.list Recupere uma lista de recursos de hospedagem para um projeto do Firebase
firebasehosting.sites.update Atualize os recursos de hospedagem existentes para um projeto do Firebase

Permissões de mensagens no aplicativo do Firebase (beta)

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

Permissões do Firebase ML (beta)

Nome da permissão Descrição
firebaseml.compressionjobs.create Criar novos trabalhos de compactação
firebaseml.compressionjobs.delete Excluir trabalhos de compactação existentes
firebaseml.compressionjobs.get Recupere detalhes de trabalhos de compactação existentes
firebaseml.compressionjobs.list Recupere uma lista de trabalhos de compactação existentes
firebaseml.compressionjobs.start Iniciar trabalhos de compactação
firebaseml.compressionjobs.update Atualize trabalhos de compactação existentes
firebaseml.models.create Criar novos modelos de ML
firebaseml.models.update Atualizar modelos de ML existentes
firebaseml.models.delete Excluir modelos de ML existentes
firebaseml.models.get Recupere detalhes de modelos de ML existentes
firebaseml.models.list Recupere uma lista de modelos de ML existentes
firebaseml.modelversions.create Criar novas versões de modelo
firebaseml.modelversions.get Recupere detalhes de versões de modelos existentes
firebaseml.modelversions.list Recupere uma lista de versões de modelos existentes
firebaseml.modelversions.update Atualizar versões de modelos existentes

Permissões de 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 limite de problemas existentes
firebaseperformance.config.update Modificar alertas e configurações de limites de problemas existentes
firebaseperformance.data.get Visualize todos os dados de desempenho e emita valores de limite

Permissões do Firebase Realtime Database

Nome da permissão Descrição
firebasedatabase.instances.create Criar novas instâncias de banco de dados
firebasedatabase.instances.get Recupere 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 Recupere 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
Ativar e desativar instâncias de banco de dados
Recupere e modifique 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 estão acessíveis para leituras/gravações.
firebasedatabase.instances.reenable Reativar instâncias de banco de dados desativadas

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

Nomes de banco 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 Recupere 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 do Firebase Remote Config

Nome da permissão Descrição
cloudconfig.configs.get Recuperar dados do Remote Config
cloudconfig.configs.update Atualizar dados de configuração remota

Permissões do Firebase Test Lab

O Test Lab requer acesso a 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 padrão predefinidas do Firebase . Para conceder acesso ao Test Lab, use uma das seguintes opções:

  • Para testes iniciados no Firebase console

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

    • Adicione membros que precisam de acesso ao Test Lab e, em seguida, atribua a eles funções de projetos herdados usando o Firebase console .

      • Para permitir que um membro execute testes com o Test Lab, atribua Editor de 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 gcloud CLI ou Testing API usando seu próprio intervalo do Cloud Storage

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

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

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

        • Firebase Test Lab Viewer ( roles/cloudtestservice.testViewer )
        • Firebase Analytics Viewer ( roles/firebase.analyticsViewer )
Nome da permissão Descrição
cloudtestservice.environmentcatalog.get Recupere o catálogo de ambientes de teste com suporte 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 Recupere uma lista de Execuções para um Histórico
cloudtoolresults.executions.get Recuperar uma execução existente
cloudtoolresults.executions.create Criar 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 Criar 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 Recupere uma lista de etapas para uma execução
cloudtoolresults.steps.get Recuperar uma etapa existente
cloudtoolresults.steps.create Criar 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 Recupere uma lista de configurações de extensão para serviços externos
(Firebase console > Configurações do projeto > Integrações)
firebaseextensions.configs.update Atualize as configurações de extensão existentes para serviços externos
(Firebase console > Configurações do projeto > Integrações)