Alguns serviços do Google Cloud, como Compute Engine, App Engine e funções do Cloud Run, permitem anexar uma conta serviço gerenciado pelo usuário a alguns tipos de recursos. Trusted Cloud Geralmente, a vinculação de uma conta de serviço acontece quando os recursos desse serviço podem ser executados ou incluem o código do aplicativo. Quando você anexa uma conta de serviço a um recurso, o código em execução no recurso pode usar essa conta de serviço como sua identidade.
Anexar uma conta de serviço gerenciado pelo usuário é a maneira preferida de fornecer credenciais ao ADC para código de produção em execução em Trusted Cloud.
Se precisar de ajuda para determinar os papéis que você precisa fornecer à conta de serviço, consulte Escolher papéis predefinidos.
Para informações sobre quais recursos podem ser anexados a uma conta de serviço e ajuda para anexar a conta de serviço ao recurso, consulte a documentação do IAM sobre como anexar uma conta de serviço.
Set up authentication:
-
Create the service account:
gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
Replace
SERVICE_ACCOUNT_NAME
with a name for the service account. -
To provide access to your project and your resources, grant a role to the service account:
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.s3ns-system.iam.gserviceaccount.com" --role=ROLE
Replace the following:
SERVICE_ACCOUNT_NAME
: the name of the service accountPROJECT_ID
: the project ID where you created the service accountROLE
: the role to grant
- To grant another role to the service account, run the command as you did in the previous step.
-
Grant the required role to the principal that will attach the service account to other resources.
gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.s3ns-system.iam.gserviceaccount.com --member="principal://iam.googleapis.com/locations/global/workforcePools/POOL_ID/subject/SUBJECT_ID" --role=roles/iam.serviceAccountUser
Replace the following:
SERVICE_ACCOUNT_NAME
: the name of the service account.PROJECT_ID
: the project ID where you created the service account.POOL_ID
: a workforce identity pool ID.-
SUBJECT_ID
: a subject ID; typically the identifier for a user in a workforce identity pool. For details, see Represent workforce pool users in IAM policies.
A seguir
- Entenda as práticas recomendadas para usar contas de serviço e chaves de contas de serviço.
- Saiba mais sobre como o ADC encontra credenciais.
- Autenticar para usar bibliotecas de cliente do Cloud.
- Conheça os métodos de autenticação.