Como Criar uma Conta de Serviço no Google Cloud: Guia Passo a Passo

Tempo de leitura: 13 minutos

Imagem destacada sobre como criar conta de serviço no Google Cloud

Como Criar uma Conta de Serviço no Google Cloud e Gerar uma Chave JSON

Criar uma conta de serviço no Google Cloud é uma das formas mais usadas para permitir que aplicações, scripts e ferramentas de automação acessem APIs do Google Cloud sem depender do login de uma pessoa. Esse recurso é útil em integrações com servidores, rotinas automáticas, sistemas internos, plugins e serviços que precisam se autenticar de maneira programática.

Neste guia, você vai aprender como criar uma conta de serviço, ativar a API necessária, definir permissões com mais segurança e gerar uma chave JSON quando ela for indispensável. Também verá boas práticas para evitar erros comuns, como conceder permissões excessivas ou deixar arquivos de chave expostos.

Observação editorial: este tutorial é independente e não representa uma página oficial do Google. Os passos abaixo foram organizados com base na interface do Google Cloud Console e na documentação oficial indicada ao final do artigo.

Atenção: chaves JSON de contas de serviço são credenciais sensíveis. Sempre que possível, o Google recomenda usar alternativas mais seguras, como credenciais de curta duração, contas de serviço anexadas a recursos do Google Cloud ou Workload Identity Federation. Use chave JSON apenas quando a ferramenta ou integração realmente exigir esse formato.

O que é uma conta de serviço no Google Cloud?

Uma conta de serviço é uma identidade criada dentro do Google Cloud para representar uma aplicação, máquina virtual, serviço, script ou processo automatizado. Diferente de uma conta comum do Google, ela não é usada por uma pessoa para fazer login manualmente. Sua função é permitir que sistemas acessem recursos e APIs com permissões controladas pelo IAM.

Por exemplo, uma aplicação pode usar uma conta de serviço para enviar dados para o Cloud Storage, publicar mensagens no Pub/Sub, executar processos no Cloud Run ou se conectar a uma API específica do Google. O ponto mais importante é que essa conta deve receber apenas as permissões necessárias para executar sua tarefa.

Quando usar uma chave JSON?

A chave JSON é um arquivo baixado para o computador ou servidor e usado pela aplicação para se autenticar como a conta de serviço. Ela costuma ser necessária em ferramentas externas, plugins, scripts locais ou integrações que ainda não aceitam métodos mais modernos de autenticação.

Apesar de ser prática, a chave JSON exige muito cuidado. Se o arquivo for enviado para um repositório público, compartilhado por engano ou salvo em um local inseguro, qualquer pessoa com acesso a ele poderá usar as permissões da conta de serviço. Por isso, a recomendação é criar a chave somente quando necessário, armazená-la com segurança e revogá-la quando não estiver mais em uso.

Antes de começar

Antes de criar a conta de serviço, verifique se você tem acesso ao projeto correto no Google Cloud e permissão para gerenciar IAM, APIs e contas de serviço. Também é importante saber qual API será usada, pois isso ajuda a escolher a função correta sem conceder acesso desnecessário.

  • Conta Google: você precisa estar logado em uma conta com acesso ao projeto.
  • Projeto do Google Cloud: use um projeto existente ou crie um novo.
  • API definida: ative apenas a API que será usada pela aplicação.
  • Permissão adequada: escolha a função mínima necessária para a integração funcionar.
  • Local seguro para a chave: nunca salve o arquivo JSON em pastas públicas ou repositórios de código.
Tela inicial do Google Cloud Console após login em uma conta Google

Tela inicial do Google Cloud Console.

Como criar uma conta de serviço no Google Cloud

Passo 1: Acesse o Console do Google Cloud

Acesse o Console do Google Cloud pelo navegador e faça login com sua conta Google. Se ainda não tiver uma conta, crie uma antes de continuar.

Ao entrar no console, confira se você está no projeto certo. Essa etapa é importante porque contas de serviço, APIs, permissões e chaves ficam associadas ao projeto selecionado.

Passo 2: Selecione ou crie um projeto

Seleção de projeto no Google Cloud Console para criar ou escolher um projeto existente

Selecione um projeto existente ou clique em novo projeto.

No topo do Google Cloud Console, clique no seletor de projetos. Você pode escolher um projeto existente ou clicar em Novo projeto para criar um ambiente separado para sua integração.

Se estiver apenas testando, prefira criar um projeto específico para testes. Isso facilita o controle de permissões, custos, APIs ativadas e chaves criadas.

Passo 3: Ative a API que será usada

Com o projeto selecionado, acesse APIs e serviços e depois clique em Biblioteca. Pesquise pela API que sua aplicação precisa usar e clique em Ativar.


Menu APIs e serviços com acesso à biblioteca de APIs no Google Cloud Console

Acesse APIs e serviços e depois Biblioteca.

Pesquisa pela Web Search Indexing API na biblioteca de APIs do Google Cloud

Exemplo de pesquisa por uma API dentro da biblioteca do Google Cloud.

Tela para ativar uma API no Google Cloud Console

Clique em ativar para liberar o uso da API no projeto.

Ative somente as APIs que serão utilizadas. Manter APIs desnecessárias desativadas ajuda a reduzir riscos e deixa o projeto mais organizado.

Passo 4: Acesse IAM e Admin

No menu lateral do Google Cloud Console, clique em IAM e Admin e depois em Contas de serviço. Essa é a área usada para criar, editar, desativar e gerenciar contas de serviço do projeto.

Menu IAM e Admin no Google Cloud Console com acesso a contas de serviço

Acesse IAM e Admin para gerenciar contas de serviço.

Passo 5: Crie uma nova conta de serviço

Clique em Criar conta de serviço. Em seguida, preencha os campos solicitados:

  • Nome da conta de serviço: use um nome claro, como integracao-indexing-api ou app-backend-storage.
  • ID da conta de serviço: o Google Cloud gera um identificador com base no nome. Ele fará parte do e-mail da conta de serviço.
  • Descrição: explique para que a conta será usada. Isso facilita auditorias futuras.
Botão criar conta de serviço no Google Cloud Console

Clique em criar conta de serviço para iniciar a configuração.

Formulário para informar nome e ID da conta de serviço no Google Cloud

Preencha o nome, o ID e a descrição da conta de serviço.

Passo 6: Defina as permissões corretas

Na etapa de permissões, evite escolher funções muito amplas, como Editor ou Proprietário, a menos que exista uma justificativa técnica muito clara. A prática mais segura é aplicar o princípio do menor privilégio: conceda apenas o acesso necessário para a tarefa que a conta de serviço vai executar.

Por exemplo, se a conta de serviço precisa apenas ler arquivos em um bucket do Cloud Storage, procure uma função específica de leitura em vez de conceder acesso total ao projeto. Se ela precisa usar uma API específica, verifique na documentação dessa API quais permissões são exigidas.

Depois de escolher a função adequada, avance para concluir a criação da conta.

Conta de serviço criada no Google Cloud Console

Conta de serviço criada no projeto selecionado.

Passo 7: Abra a área de chaves da conta de serviço

Após criar a conta, clique no nome dela para abrir os detalhes. Em seguida, acesse a aba Chaves. Essa área permite adicionar, listar, desativar ou excluir chaves associadas à conta de serviço.

Antes de criar uma chave, confirme se a sua integração realmente precisa de um arquivo JSON. Em ambientes hospedados no próprio Google Cloud, muitas vezes é possível usar a conta de serviço anexada ao recurso, sem baixar nenhuma chave.

Opção criar nova chave na conta de serviço do Google Cloud

Acesse a aba Chaves e clique em adicionar chave.
Tela gerenciar chaves da conta de serviço no Google Cloud Console

Use a opção gerenciar chaves para criar ou revisar credenciais existentes.

Passo 8: Gere a chave no formato JSON

Clique em Adicionar chave, selecione Criar nova chave e escolha o formato JSON. Depois clique em Criar. O arquivo será baixado automaticamente para o seu computador.

Seleção do formato JSON ao criar chave de conta de serviço no Google Cloud

Selecione JSON para baixar a chave da conta de serviço.

Esse arquivo contém uma chave privada. Trate-o como uma senha de alto privilégio. Não envie por e-mail, não publique em repositórios e não deixe em diretórios acessíveis pela web.

Passo 9: Armazene a chave JSON com segurança

Depois do download, mova o arquivo para um local seguro. O ideal é usar um gerenciador de segredos ou uma solução própria para armazenamento de credenciais. Em servidores, limite as permissões do arquivo para que apenas o usuário da aplicação consiga ler a chave.

Arquivo de chave JSON da conta de serviço salvo no computador

Após o download, armazene o arquivo JSON em um local seguro.

Também é recomendável manter um controle das chaves criadas: data de criação, finalidade, ambiente onde está sendo usada e responsável pela integração. Se uma chave não estiver mais em uso, desative ou exclua pelo Console do Google Cloud.

Passo 10: Use a chave JSON na aplicação

Uma forma comum de usar a chave JSON é configurar a variável de ambiente GOOGLE_APPLICATION_CREDENTIALS apontando para o caminho do arquivo. As bibliotecas oficiais do Google conseguem localizar essa variável e autenticar a aplicação automaticamente.

Exemplo de caminho em um servidor Linux:

export GOOGLE_APPLICATION_CREDENTIALS="/caminho/seguro/minha-chave.json"

Em sistemas Windows, a configuração pode ser feita pelas variáveis de ambiente do sistema ou pelo terminal, dependendo do ambiente de execução. O importante é evitar deixar o caminho ou o conteúdo da chave exposto publicamente.

Boas práticas de segurança para contas de serviço

Para usar contas de serviço com segurança, considere estas recomendações:

  • Aplique o menor privilégio: conceda apenas as permissões necessárias.
  • Evite funções amplas: não use Editor, Proprietário ou Administrador sem necessidade real.
  • Prefira credenciais de curta duração: quando possível, use métodos que não dependam de chave JSON permanente.
  • Proteja o arquivo JSON: armazene a chave em um local seguro e nunca publique o arquivo.
  • Revise chaves antigas: exclua credenciais que não são mais usadas.
  • Monitore acessos: acompanhe logs e atividades da conta de serviço.
  • Use uma conta por finalidade: evite reutilizar a mesma conta de serviço para várias integrações diferentes.

Erros comuns ao criar uma conta de serviço

  • Criar a conta no projeto errado: sempre confirme o projeto ativo antes de iniciar.
  • Não ativar a API necessária: a autenticação pode funcionar, mas as chamadas à API falharão.
  • Usar permissões excessivas: isso aumenta o impacto caso a chave seja comprometida.
  • Salvar a chave em local público: nunca coloque o JSON em pastas acessíveis pela internet.
  • Enviar a chave para o GitHub: adicione arquivos de credenciais ao .gitignore.
  • Não remover chaves antigas: credenciais esquecidas continuam sendo um risco.

Vantagens e limitações

Vantagens

  • Automação: permite que sistemas executem tarefas sem login manual.
  • Controle de acesso: as permissões podem ser ajustadas conforme a necessidade da aplicação.
  • Integração com APIs: facilita o uso de serviços do Google Cloud em aplicações e scripts.
  • Separação de responsabilidades: cada serviço pode ter uma identidade própria.
  • Auditoria: é mais fácil identificar qual sistema realizou determinada ação.

Limitações e cuidados

  • Risco de exposição da chave: o arquivo JSON precisa ser protegido como uma senha.
  • Gestão de permissões: permissões incorretas podem causar falhas ou riscos de segurança.
  • Manutenção: chaves antigas devem ser revisadas, rotacionadas ou excluídas.
  • Complexidade inicial: iniciantes podem confundir APIs, permissões e projetos.

Perguntas frequentes sobre conta de serviço no Google Cloud

Encontre respostas para as dúvidas mais comuns sobre conta de serviço, chave JSON, permissões e segurança no Google Cloud.


Ícone de perguntas frequentes sobre conta de serviço no Google Cloud
+ O que é uma conta de serviço no Google Cloud?
Resposta: É uma identidade usada por aplicações, scripts e serviços para acessar recursos do Google Cloud de forma automatizada. Ela permite autenticação sem depender do login manual de um usuário.
+ Para que serve uma chave JSON de conta de serviço?
Resposta: A chave JSON é usada para autenticar uma aplicação como uma conta de serviço. Ela costuma ser usada em integrações externas, ferramentas de automação ou ambientes que não aceitam métodos mais seguros de autenticação.
+ É seguro usar chave JSON?
Resposta: Ela pode ser usada com segurança se for bem protegida, mas representa risco quando fica exposta. O ideal é usar chaves JSON somente quando necessário e preferir credenciais de curta duração ou autenticação gerenciada sempre que possível.
+ Qual permissão devo dar para uma conta de serviço?
Resposta: A permissão correta depende da API e da tarefa que será executada. A melhor prática é aplicar o menor privilégio, concedendo apenas o acesso necessário para a integração funcionar.
+ Posso criar várias contas de serviço no mesmo projeto?
Resposta: Sim. Em muitos casos, essa é uma boa prática. Você pode criar uma conta de serviço para cada aplicação, ambiente ou finalidade, mantendo permissões separadas e facilitando auditorias.
+ Como revogar uma chave JSON comprometida?
Resposta: Acesse a conta de serviço no Google Cloud Console, entre na aba Chaves e exclua a chave comprometida. Depois gere uma nova chave apenas se a aplicação ainda precisar desse tipo de credencial.
+ Preciso ativar a API antes de usar a conta de serviço?
Resposta: Sim. Além de criar a conta de serviço e definir permissões, a API que será usada precisa estar ativada no projeto do Google Cloud.
+ Onde encontrar a documentação oficial?
Resposta: Você pode consultar a documentação oficial do Google Cloud sobre criação de contas de serviço, credenciais de contas de serviço e boas práticas para gerenciar chaves.

Conclusão

Criar uma conta de serviço no Google Cloud é um processo simples, mas exige atenção às permissões e ao armazenamento das credenciais. Para uma configuração segura, escolha o projeto correto, ative apenas as APIs necessárias, aplique o princípio do menor privilégio e gere uma chave JSON somente quando a integração realmente precisar desse arquivo.

Seguindo esses cuidados, você reduz riscos de segurança e deixa sua aplicação pronta para se autenticar com as APIs do Google Cloud de forma mais organizada, confiável e profissional.

Fontes oficiais consultadas