Tipos de contas de serviço

As contas de serviço podem ser divididas em duas categorias: contas de serviço que você gerencia e contas de serviço gerenciadas pelo Google. Nesta página, descrevemos como cada tipo de conta de serviço é criado e usado.

Contas de serviço gerenciadas pelo usuário

As contas de serviço gerenciadas pelo usuário são criadas nos seus projetos. É possível atualizar, desativar, ativar e excluir essas contas de serviço a seu critério. Também é possível gerenciar o acesso de outros principais a essas contas de serviço.

É possível criar contas de serviço gerenciadas pelo usuário no projeto usando a API do IAM, o Console do Google Cloud ou a Google Cloud CLI.

Por padrão, é possível criar até 100 contas de serviço gerenciadas pelo usuário em um projeto. Se essa cota não atender às suas necessidades, use o Console do Google Cloud para solicitar um aumento de cota. Somente contas de serviço criadas pelo usuário são contabilizadas nessa cota. Contas de serviço padrão e contas de serviço gerenciadas pelo Google não são.

Ao criar uma conta de serviço gerenciada pelo usuário no projeto, você escolhe um nome para a conta de serviço. Esse nome aparece no endereço de e-mail que identifica a conta de serviço, com o seguinte formato:

service-account-name@project-id.iam.gserviceaccount.com

Para saber como criar uma conta de serviço, consulte Criar contas de serviço.

Contas de serviço padrão

As contas de serviço padrão são gerenciadas pelo usuário e criadas automaticamente quando você ativa ou usa determinados serviços do Google Cloud. Essas contas de serviço permitem que o serviço implante jobs que acessam outros recursos do Google Cloud. Você é responsável por gerenciar as contas de serviço padrão depois que elas são criadas.

Se seu aplicativo for executado em um ambiente do Google Cloud com uma conta de serviço padrão, o aplicativo poderá usar as credenciais da conta de serviço padrão para chamar as APIs do Google Cloud. Como alternativa, crie sua própria conta de serviço gerenciada pelo usuário e use-a para se autenticar. Para mais detalhes, consulte Configurar as Application Default Credentials.

Esta tabela mostra os serviços que criam contas de serviço padrão:

Serviço Nome da conta de serviço Endereço de e-mail
App Engine e qualquer serviço do Google Cloud que use o App Engine Conta de serviço padrão do App Engine project-id@appspot.gserviceaccount.com
Compute Engine e qualquer serviço do Google Cloud que use o Compute Engine Conta de serviço padrão do Compute Engine project-number-compute@developer.gserviceaccount.com

Contas de serviço gerenciadas pelo Google

Alguns serviços do Google Cloud precisam acessar seus recursos para serem capazes de atuar em seu nome. Por exemplo, quando você usa o Cloud Run para executar um contêiner, o serviço precisa acessar qualquer tópico do Pub/Sub que possa acionar o contêiner.

Para atender a essa necessidade, o Google cria e gerencia contas de serviço de muitos serviços do Google Cloud. Elas são conhecidas como contas de serviço gerenciadas pelo Google. Talvez você veja as contas de serviço gerenciadas pelo Google na política de permissão do projeto, nos registros de auditoria ou na página do IAM no Console do Google Cloud.

Contas de serviço gerenciadas pelo Google não são criadas nos seus projetos. Portanto, você não as verá ao visualizar as contas de serviço dos seus projetos.

O Google tem os seguintes tipos de contas de serviço gerenciadas pelo Google:

Visibilidade

As contas de serviço gerenciadas pelo Google não estão listadas na página Contas de serviço do Console do Google Cloud. Essas contas de serviço não estão localizadas no seu projeto, e não é possível acessá-las diretamente.

Por padrão, as contas de serviço gerenciadas pelo Google também não são listadas na página IAM do Console do Google Cloud, mesmo que elas tenham recebido um papel no projeto. Opcional: para visualizar concessões de papel para contas de serviço gerenciadas pelo Google, marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google.

Agentes de serviço específicos do serviço

Agentes de serviços são contas de serviço gerenciadas pelo Google que atuam em nome de serviços individuais. Em muitos casos, esses agentes de serviços são necessários para que os serviços funcionem corretamente. Por exemplo, é com eles que os coletores do Cloud Logging gravam registros nos buckets do Cloud Storage.

Cada agente de serviço está associado a um recurso. Esse recurso normalmente é um projeto, uma pasta ou uma organização, embora também possa ser um recurso específico do serviço, por exemplo, uma instância do Cloud SQL. Esse recurso define o escopo das ações do agente de serviço. Por exemplo, se um agente de serviço estiver associado a um projeto, ele atuará em nome de um serviço para o projeto e seus recursos descendentes.

É possível determinar o tipo de recurso a que um agente de serviço está associado analisando o endereço de e-mail:

  • Se o agente de serviço estiver associado a um projeto, uma pasta ou uma organização, o endereço de e-mail dele conterá o ID numérico desse projeto, pasta ou organização.
  • Se o agente de serviço estiver associado a um recurso específico do serviço, o endereço de e-mail dele conterá um ID de projeto numérico e um identificador exclusivo. O ID numérico do projeto indica qual projeto é o proprietário do recurso a que o agente de serviço está associado. O identificador exclusivo distingue o agente de serviço de outros agentes semelhantes no mesmo projeto.

Criação do agente de serviço

O momento exato em que um agente de serviço é criado depende do tipo de recurso a que ele está associado.

Os agentes de serviço associados a um recurso específico são criados quando você cria o recurso. Para mais informações sobre como identificar e configurar esses agentes de serviço, consulte a documentação do recurso associado.

Os agentes de serviço associados a projetos, pastas e organizações são criados conforme necessário, geralmente quando você usa um serviço. Se necessário, também é possível pedir ao Google Cloud para criar agentes de serviço para um serviço antes de usá-lo. Para mais informações, consulte Criar e conceder papéis a agentes de serviço.

Papéis de agente de serviço

Algumas ações no Google Cloud exigem que os agentes de serviço criem e acessem recursos em seu nome. Por exemplo, quando você cria um cluster do Dataproc, o agente de serviço do Dataproc precisa de permissão para criar instâncias do Compute Engine no seu projeto.

Para receber esse acesso, os agentes de serviço precisam de papéis específicos do IAM. Muitos agentes de serviços para envolvidos no projeto recebem automaticamente os papéis necessários. Os nomes desses papéis concedidos automaticamente geralmente terminam em serviceAgent ou ServiceAgent. Para outros agentes de serviço, você precisa conceder papéis a eles para que o serviço funcione corretamente. Para descobrir quais agentes de serviço recebem papéis automaticamente, consulte a referência do agente de serviço.

Se você pedir ao Google Cloud para criar agentes de serviço antes de usar um serviço, conceda a eles os papéis que normalmente são concedidos automaticamente. Isso ocorre porque os agentes de serviço criados na solicitação de um usuário não recebem papéis automaticamente. Se você não conceder esses papéis aos agentes, alguns serviços poderão não funcionar corretamente. Para saber como conceder esses papéis a agentes de serviço, consulte Criar e conceder papéis a agentes de serviço.

Agentes de serviço principais

Na referência do agente de serviço, alguns deles são identificados como agentes de serviço primários. Agentes de serviços primários são aqueles com endereço de e-mail retornado quando você aciona a criação de um agente de serviço.

Agente de serviço de APIs do Google

A política de permissão do projeto provavelmente se refere a uma conta de serviço chamada agente de serviço de APIs do Google, com um endereço de e-mail que usa o seguinte formato: project-number@cloudservices.gserviceaccount.com

Essa conta de serviço executa processos internos do Google em seu nome. Ele recebe automaticamente o papel de editor (roles/editor) no projeto.

Gerenciador de papéis para contas de serviço gerenciadas pelo Google

Os registros de auditoria do IAM podem se referir à conta de serviço service-agent-manager@system.gserviceaccount.com.

Essa conta de serviço gerencia os papéis concedidos aos agentes de serviço. Ela é visível apenas nos registros de auditoria.

Por exemplo, se você usar uma nova API, o Google poderá criar automaticamente um novo agente de serviço e conceder a ele papéis no projeto. A concessão desses papéis gera uma entrada de registro de auditoria, que mostra que service-agent-manager@system.gserviceaccount.com definiu a política de permissão para o projeto.

A seguir

Faça um teste

Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho dos nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.

Comece a usar gratuitamente