O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Permissões de IAM do Firebase

As permissões são concedidas aos membros do projeto por meio de papéis. Um papel é um conjunto de permissões. Ao fazer isso, você concede ao usuário todas as permissões contidas no papel.

Nesta página, descrevemos as ações ativadas pelas permissões que você pode encontrar listadas em um papel compatível com o Firebase. Essas permissões estão divididas em duas categorias:

Permissões necessárias

O Firebase IAM inclui permissões que sejam:

Para ver 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 nas Permissões do IAM específicas de produto do Firebase.

Permissões necessárias incluídas em todos os papéis

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 um dos papéis predefinidos do Firebase.

Permissão Descrição
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze Concede permissão para visualizar segmentos e dados do Google Analytics
Concede permissões para recuperar informações do projeto do Firebase.
Concede permissões para verificar o estado das APIs do Google e para executar comandos da CLI do Firebase.

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 executar algumas ações específicas do serviço do Firebase.

Quando necessário, essas permissões são incluídas nos papéis predefinidos do Firebase.

Ação Permissão necessária
Acessar integrações de projetos do Firebase com ferramentas de colaboração (incluindo Slack, Jira e PagerDuty) firebaseextensions.configs.*
Ver o uso e a análise do StackDriver monitoring.timeSeries.list
Execute os comandos da CLI do Firebase
Para mais informações, consulte a documentação do Google Cloud sobre Acesso ao Runtime Configurator.
runtimeconfig.*

Permissões necessárias para ações específicas do 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 do 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.clients.create
Adicionar aplicativos do Firebase a um projeto do Firebase clientauthconfig.clients.create
clientauthconfig.clients.get
clientauthconfig.clients.list
serviceusage.apikeys.create
serviceusage.apikeys.get
serviceusage.apikeys.list
serviceusage.apikeys.update
serviceusage.services.enable
firebase.clients.get
Fazer o download do arquivo de configuração do Firebase clientauthconfig.clients.get
clientauthconfig.clients.list
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
Remover as impressões digitais do certificado SHA para aplicativos Android clientauthconfig.clients.delete
Atualizar o ID da App Store ou o ID da equipe para aplicativos iOS clientauthconfig.clients.get
clientauthconfig.clients.update

Permissões do IAM específicas de produto do 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 papéis personalizados.

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 Recuperar o plano de faturamento do Firebase atual de um projeto
firebase.billingPlans.update Alterar o plano de faturamento do Firebase atual de um projeto
firebase.clients.create Adicionar novos aplicativos a um projeto
firebase.clients.delete Excluir aplicativos de um projeto
firebase.clients.get Recuperar detalhes e configurações de apps em um projeto
firebase.clients.list Recuperar uma lista dos aplicativos de um projeto
firebase.clients.update Atualizar detalhes e configurações de apps em um projeto
firebase.links.create Criar novos links para os sistemas do Google
(Console do Firebase > Configurações do projeto > Integrações)
firebase.links.delete Excluir links para sistemas do Google
(Console do Firebase > Configurações do projeto > Integrações)
firebase.links.list Recuperar uma lista de links para sistemas do Google
(Console do Firebase > Configurações do projeto > Integrações)
firebase.links.update Atualizar links existentes para sistemas do Google
(Console do Firebase > Configurações do projeto > Integrações)
firebase.playlinks.get Recuperar detalhes sobre um link para o Google Play
(Console do Firebase > Configurações do projeto > Integrações > Google Play)
firebase.playlinks.list Recuperar uma lista de links para o Google Play
(Console do Firebase > Configurações do projeto > Integrações > Google Play)
firebase.playlinks.update Criar novos links e atualizar links existentes para o Google Play
(Console do Firebase > Configurações do projeto > Integrações > Google Play)
firebase.projects.delete Excluir projetos atuais
firebase.projects.get Recuperar os detalhes e recursos do Firebase de um projeto
firebase.projects.list Recuperar uma lista de projetos do Firebase
firebase.projects.update Modificar os atributos de um projeto
Receber alertas para produtos e recursos aplicáveis do Firebase (Saiba mais)

Permissões do Firebase App Distribution (Beta)

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 do Google Analytics

Nome da permissão Descrição
firebaseanalytics.resources.googleAnalyticsEdit Modificar dados existentes do Google Analytics, incluindo públicos-alvo, propriedades de usuários, funis, parâmetros de relatórios, conversões e postbacks
Para mais informações, consulte a Ajuda do Google Analytics.
firebaseanalytics.resources.googleAnalyticsReadAndAnalyze Visualize dados existentes do Google Analytics, incluindo relatórios e dados de configuração
Manipule dados em relatórios (por exemplo, filtros)
Para mais informações, consulte a Ajuda do Analytics.

Permissões do Firebase Authentication

Nome da permissão Descrição
firebaseauth.configs.create Criar a configuração do Authentication
firebaseauth.configs.get Recuperar a configuração do Authentication
firebaseauth.configs.getHashConfig Receber a configuração e o hash de senha de contas de usuário
firebaseauth.configs.update Atualizar a configuração atual do Authentication
firebaseauth.users.create Criar novos usuários no Authentication
firebaseauth.users.createSession Criar um cookie de sessão para um usuário conectado
firebaseauth.users.delete Excluir os usuários atuais no Authentication
firebaseauth.users.get Recuperar uma lista dos usuários atuais do Authentication
firebaseauth.users.sendEmail Enviar e-mails para os usuários
firebaseauth.users.update Atualizar os usuários atuais no Authentication

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 Criar novos experimentos
firebaseabt.experiments.delete Excluir experimentos
firebaseabt.experiments.get Recuperar detalhes de um experimento
firebaseabt.experiments.list Recuperar uma lista de experimentos
firebaseabt.experiments.update Atualizar um experimento
firebaseabt.projectmetadata.get Recuperar metadados de análise para configurar um experimento

Permissões do Cloud Firestore

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

Permissões do Cloud Storage

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

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

Nome da permissão Descrição
firebaserules.releases.create Criar versões
firebaserules.releases.delete Excluir versões
firebaserules.releases.get Recuperar versões
firebaserules.releases.getExecutable Recuperar payloads binários executáveis para versões
firebaserules.releases.list Recuperar uma lista de versões
firebaserules.releases.update Atualizar referências de conjuntos de regras para versões
firebaserules.rulesets.create Criar novos conjuntos de regras
firebaserules.rulesets.delete Excluir o conjunto de regras atual
firebaserules.rulesets.get Recuperar conjuntos de regras com origem
firebaserules.rulesets.list Encontrar metadados do conjunto de regras (sem origem)
firebaserules.rulesets.test Testar a precisão de origens

Funções de nuvem para permissões do Firebase

Para ver 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 papéis requer uma configuração específica de permissões que não estão incluídas nos papéis predefinidos do Firebase padrão. Para implantar papéis, use uma das seguintes opções:

Permissões do Firebase Cloud Messaging

Nome da permissão Descrição
cloudmessaging.messages.create Enviar notificações e mensagens de dados por meio da API FCM HTTP e do AdminSDK
firebasenotifications.messages.create Criar novas mensagens no Editor de Notificações
firebasenotifications.messages.delete Excluir mensagens existentes no Editor de Notificações
firebasenotifications.messages.get Recuperar detalhes de mensagens existentes no Editor do Notificações
firebasenotifications.messages.list Recuperar uma lista de mensagens existentes no Editor de Notificações
firebasenotifications.messages.update Atualizar mensagens existentes no Editor de Notificações

Permissões do Firebase Crashlytics

Nome da permissão Descrição
firebasecrashlytics.config.get Recuperar as configurações 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 observações anexadas a eles
firebasecrashlytics.issues.list Recuperar uma lista de problemas do Crashlytics
firebasecrashlytics.issues.update Abrir, fechar e ignorar problemas atuais do Crashlytics
Atualizar observações anexadas a eles
firebasecrashlytics.sessions.get Recuperar detalhes sobre sessões com falha do Crashlytics
firebasecrashlytics.sessions.list Recuperar uma lista de sessões com falha do Crashlytics
Nome da permissão Descrição
firebasecrash.issues.update Atualizar os problemas existentes do Crashlytics, criar observações sobre os problemas e definir alertas de velocidade
firebasecrash.reports.get Recuperar relatórios 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
firebasedynamiclinks.domains.get Recuperar detalhes de domínios de links dinâmicos
firebasedynamiclinks.domains.list Recuperar uma lista de domínios de links dinâmicos
firebasedynamiclinks.domains.update Atualizar domínios de links dinâmicos
firebasedynamiclinks.links.create Criar novos links dinâmicos
firebasedynamiclinks.links.get Recuperar detalhes de links dinâmicos
firebasedynamiclinks.links.list Recuperar uma lista de links dinâmicos
firebasedynamiclinks.links.update Atualizar links dinâmicos
firebasedynamiclinks.stats.get Recuperar estatísticas de links dinâmicos
firebasedynamiclinks.destinations.list Recuperar destinos de links dinâmicos
firebasedynamiclinks.destinations.update Atualizar destinos de links dinâmicos

Permissões do Firebase Hosting

Nome da permissão Descrição
firebasehosting.sites.create Criar novos recursos do Hosting de um projeto do Firebase
firebasehosting.sites.delete Excluir os recursos do Hosting existentes de um projeto do Firebase
firebasehosting.sites.get Recuperar detalhes de um recurso do Hosting existente de um projeto do Firebase
firebasehosting.sites.list Recuperar uma lista dos recursos do Hosting de um projeto do Firebase
firebasehosting.sites.update Atualizar os recursos do Hosting existentes de um projeto do Firebase.

Permissões do recurso do Firebase de mensagens no app (Beta)

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

Permissões do Firebase ML (Beta)

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

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 limite de problemas
firebaseperformance.config.update Modificar alertas e configurações de limite de problemas atuais
firebaseperformance.data.get Ver todos os dados de desempenho e emitir valores de limite

Permissões do Firebase Previsões

Nome da permissão Descrição
firebasepredictions.predictions.create Criar novas previsões
firebasepredictions.predictions.delete Excluir previsões
firebasepredictions.predictions.list Recuperar uma lista de previsões
firebasepredictions.predictions.update Atualizar previsões

Permissões do Firebase Realtime Database

Nome da permissão Descrição
firebasedatabase.instances.create Criar novas instâncias do banco de dados
firebasedatabase.instances.get Oferecer acesso somente leitura aos dados no banco de dado
firebasedatabase.instances.list Recuperar uma lista de instâncias de banco de dados
firebasedatabase.instances.update Atualizar instâncias de banco de dados existentes
Ativar e desativar instâncias de banco de dados
Acesso de gravação aos dados no banco de dados
Recuperar e modificar regras de segurança do banco de dados
Recuperar e modificar gatilhos do Cloud Functions para o banco de dados

Permissões do 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 exige acesso a buckets do Cloud Storage, portanto, exige um conjunto específico de permissões não incluídas nos papéis predefinidos do Firebase padrão. Para conceder acesso ao Test Lab, use uma das seguintes soluções:

  • Para testes iniciados no Console do Firebase

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

    • Adicione membros que precisam de acesso ao Test Lab e, em seguida, atribua a eles papéis de projetos legados usando o Console do Firebase.

      • Para permitir que um membro execute testes com o Test Lab, atribua um papel de Editor do projeto ou outro com mais permissões.
      • Para permitir que um membro visualize os resultados do teste no Test Lab, atribua um papel de Leitor do projeto ou outro com mais permissões.
  • Para testes iniciados a partir da CLI gcloud ou da API Testing ao usar seu próprio bucket do Cloud Storage

    • Atribua dois papéis predefinidos (que juntos concedam o conjunto de permissões necessárias) usando o Console do Google Cloud.

      • Para permitir que um membro execute testes no Test Lab, atribua estes dois papéis:

        • Administrador do Firebase Test Lab (roles/cloudtestservice.testAdmin)
        • Leitor do Firebase Analytics (roles/firebase.analyticsViewer)
      • Para permitir que um membro veja os resultados de testes no Test Lab, atribua estes dois papéis:

        • Leitor do Firebase Test Lab (roles/cloudtestservice.testViewer)
        • Leitor do Firebase Analytics (roles/firebase.analyticsViewer)
Nome da permissão Descrição
cloudtestservice.environmentcatalog.get Recuperar o catálogo de ambientes de teste compatíveis com um projeto.
cloudtestservice.matrices.create Solicitar a execução de uma matriz de testes de acordo com 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 de um histórico
cloudtoolresults.executions.get Recuperar uma execução atual
cloudtoolresults.executions.create Criar uma nova execução
cloudtoolresults.executions.update Atualizar uma execução atual
cloudtoolresults.histories.list Recuperar uma lista de históricos
cloudtoolresults.histories.get Recuperar um histórico
cloudtoolresults.histories.create Criar um novo histórico
cloudtoolresults.settings.create Criar novas configurações de resultados da ferramenta
cloudtoolresults.settings.get Recuperar configurações de resultados da ferramenta
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 atual
cloudtoolresults.steps.create Criar uma nova etapa
cloudtoolresults.steps.update Atualizar uma etapa atual

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

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