Esta página explica como criar contas de serviço através da API
Identity and Access Management (IAM), da Google Cloud consola e da ferramenta de linha de comandosgcloud
.
Por predefinição, cada projeto pode ter até 100 contas de serviço que controlam o acesso aos seus recursos. Pode pedir um aumento da quota se necessário. Saiba mais acerca das quotas e dos limites.
Antes de começar
Enable the IAM API.
Configurar autenticação.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
C#
Para usar os .NET exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Google Cloud documentação de autenticação.
C++
Para usar os C++ exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Google Cloud documentação de autenticação.
Ir
Para usar os Go exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Google Cloud documentação de autenticação.
Java
Para usar os Java exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Google Cloud documentação de autenticação.
Python
Para usar os Python exemplos nesta página num ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e, em seguida, configure as Credenciais predefinidas da aplicação com as suas credenciais de utilizador.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para mais informações, consulte Configurar o ADC para um ambiente de desenvolvimento local na Google Cloud documentação de autenticação.
REST
Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.
Instale a CLI Google Cloud.
Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.
Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.
Compreenda as contas de serviço do IAM
Funções necessárias
Para receber as autorizações de que precisa para criar contas de serviço, peça ao seu administrador para lhe conceder a função de IAM Criar contas de serviço (
roles/iam.serviceAccountCreator
) no projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Se quiser conceder às contas de serviço recém-criadas acesso ao seu projeto, também precisa da função de administrador de IAM do projeto (
roles/resourcemanager.projectIamAdmin
).Criar uma conta de serviço
Quando cria uma conta de serviço, tem de facultar um ID alfanumérico (
SERVICE_ACCOUNT_NAME
nos exemplos abaixo), comomy-service-account
. O ID tem de ter entre 6 e 30 carateres e pode conter carateres alfanuméricos em minúsculas e traços. Depois de criar uma conta de serviço, não pode alterar o respetivo nome.O nome da conta de serviço é apresentado no endereço de email aprovisionado durante a criação, no formato
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
.Cada conta de serviço também tem um ID numérico exclusivo e permanente, que é gerado automaticamente.
Também fornece as seguintes informações quando cria uma conta de serviço:
DESCRIPTION
é uma descrição opcional da conta de serviço.DISPLAY_NAME
é um nome intuitivo para a conta de serviço.PROJECT_ID
é o ID do seu Google Cloud projeto.
Depois de criar uma conta de serviço, pode ter de aguardar 60 segundos ou mais antes de a usar. Este comportamento ocorre porque as operações de leitura são eventualmente consistentes. Pode demorar algum tempo até que a nova conta de serviço fique visível. Se tentar ler ou usar uma conta de serviço imediatamente após a sua criação e receber um erro, pode tentar novamente o pedido com recuo exponencial.
Consola
- Na Google Cloud consola, aceda à página Criar conta de serviço.
Aceda a Criar conta de serviço
Os passos restantes aparecem na Google Cloud consola.
- Selecione um Google Cloud projeto.
- Introduza um nome da conta de serviço a apresentar na Google Cloud consola.
A Google Cloud consola gera um ID da conta de serviço com base neste nome. Edite o ID, se necessário. Não pode alterar o ID posteriormente.
- Opcional: introduza uma descrição da conta de serviço.
- Se não quiser definir controlos de acesso agora, clique em Concluído para terminar a criação da conta de serviço. Para definir os controlos de acesso agora, clique em Criar e continuar e avance para o passo seguinte.
- Opcional: escolha uma ou mais funções do IAM para conceder à conta de serviço no projeto.
- Quando terminar de adicionar funções, clique em Continuar.
- Opcional: no campo Função de utilizadores da conta de serviço, adicione membros que precisem de associar a conta de serviço a outros recursos.
- Opcional: no campo Função de administrador da conta de serviço, adicione membros que precisem de gerir a conta de serviço.
- Clique em Concluído para terminar de criar a conta de serviço.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Para criar a conta de serviço, execute o comando
gcloud iam service-accounts create
:gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \ --description="DESCRIPTION" \ --display-name="DISPLAY_NAME"
Substitua os seguintes valores:
-
SERVICE_ACCOUNT_NAME
: o nome da conta de serviço -
DESCRIPTION
: uma descrição opcional da conta de serviço -
DISPLAY_NAME
: um nome de conta de serviço a apresentar na consola Google Cloud
-
-
Opcional: para conceder à sua conta de serviço uma função do IAM no seu projeto, execute o comando
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" \ --role="ROLE_NAME"
Substitua os seguintes valores:
-
PROJECT_ID
: o ID do projeto -
SERVICE_ACCOUNT_NAME
: o nome da conta de serviço -
ROLE_NAME
: um nome de função, comoroles/compute.osLogin
-
-
Opcional: para permitir que os utilizadores anexem a conta de serviço a outros recursos, execute o comando
gcloud iam service-accounts add-iam-policy-binding
para conceder a um utilizador a função de utilizador da conta de serviço (roles/iam.serviceAccountUser
) na conta de serviço:gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountUser"
Substitua os seguintes valores:
PROJECT_ID
: o ID do projetoSERVICE_ACCOUNT_NAME
: o nome da conta de serviçoUSER_EMAIL
: o endereço de email do utilizador
PROJECT_ID
: O ID do seu Google Cloud projeto. Os IDs dos projetos são strings alfanuméricas, comomy-project
.SA_NAME
: o ID alfanumérico da sua conta de serviço. Este nome tem de ter entre 6 e 30 carateres e pode conter carateres alfanuméricos em minúsculas e travessões.SA_DESCRIPTION
: opcional. Uma descrição para a conta de serviço.SA_DISPLAY_NAME
: um nome legível para humanos para a conta de serviço.
C++
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API C++ IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
C#
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API C# IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Go
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API Go IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Java
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API Java IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
Python
Para saber como instalar e usar a biblioteca cliente para a IAM, consulte o artigo Bibliotecas cliente da IAM. Para mais informações, consulte a documentação de referência da API Python IAM.
Para se autenticar no IAM, configure as Credenciais padrão da aplicação. Para mais informações, consulte a secção Antes de começar.
REST
O método
serviceAccounts.create
cria uma conta de serviço.Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
Método HTTP e URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts
Corpo JSON do pedido:
{ "accountId": "SA_NAME", "serviceAccount": { "description": "SA_DESCRIPTION", "displayName": "SA_DISPLAY_NAME" } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "name": "projects/my-project/serviceAccounts/my-service-account@my-project.iam.gserviceaccount.com", "projectId": "my-project", "uniqueId": "123456789012345678901", "email": "my-service-account@my-project.iam.gserviceaccount.com", "displayName": "My service account", "etag": "BwUp3rVlzes=", "description": "A service account for running jobs in my project", "oauth2ClientId": "987654321098765432109" }
Depois de criar uma conta de serviço, conceda uma ou mais funções à conta de serviço para que possa agir em seu nome.
Além disso, se a conta de serviço precisar de aceder a recursos noutros projetos, normalmente, tem de ativar as APIs para esses recursos no projeto onde criou a conta de serviço.
O que se segue?
- Saiba como listar e editar contas de serviço.
- Reveja o processo de concessão de funções de IAM a todos os tipos de principais, incluindo contas de serviço.
- Compreenda como anexar contas de serviço a recursos.
Experimente
Se for um novo utilizador do Google Cloud, crie uma conta para avaliar o desempenho dos nossos produtos em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.
Comece gratuitamenteExceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-20 UTC.