Gcloud Auth Activate-service-account [portable] -

# Example: GitHub Action step - name: Authenticate to GCP run: | echo '$ secrets.GCP_SA_KEY ' > /tmp/key.json gcloud auth activate-service-account my-ci@project.iam.gserviceaccount.com \ --key-file=/tmp/key.json gcloud config set project my-project Terraform needs credentials to provision infrastructure. Instead of using application default credentials (which may be stale), you explicitly activate a service account before running terraform plan :

gcloud auth activate-service-account terraform-runner@prod.iam.gserviceaccount.com \ --key-file=/secrets/terraform-key.json terraform apply A common pattern: A service account in Project-A is granted IAM roles in Project-B . By activating that account locally, you can manage resources across both projects without switching user identities. The Critical Security Warning Do not commit service account key files to source control. They are root credentials. If leaked, an attacker has programmatic access to your GCP resources. gcloud auth activate-service-account

With great power (a JSON key file) comes great responsibility (never commit it to GitHub). # Example: GitHub Action step - name: Authenticate

In the world of Google Cloud, identity is everything. While developers often rely on their personal user credentials (protected by multi-factor authentication), this model breaks down in headless environments—CI/CD pipelines, servers, or automated scripts. How do you tell Google Cloud, "Trust this machine as much as you trust me"? The Critical Security Warning Do not commit service

However, for legacy systems, on-premise servers, and any scenario where you must run gcloud with a specific robot identity, this command remains . Final Verdict gcloud auth activate-service-account is the Swiss Army knife of GCP automation. It transforms a human-oriented CLI into a machine-oriented orchestration tool. Master this command, and you master the art of reliable, secure, and repeatable cloud infrastructure management.