Skip to main content
Connect your Google Cloud project to Annie to unlock real-time infrastructure mapping, monitoring, and dependency insights—exactly the same capabilities as our AWS integration, but using GCP-native security primitives.
Security First: All the roles listed below provide read-only access to your infrastructure. Anyshift cannot access secrets, passwords, API keys, or any other sensitive data stored in your GCP project.

Query retained GCP evidence

After connecting a project, you can inspect the inventory and change evidence collected for it with the Annie CLI:
Cloud resources report their lifecycle, observation freshness, and stored IaC provenance. Cloud events distinguish provider audit evidence, snapshot-derived changes, and reconciliation deletes. A provider operation ID groups GCP-native activity; an Anyshift correlation ID groups the broader retained event story. Cloud-event browsing is bounded by default: Annie reports the events shown plus pagination state without calculating an exact full-window total. Add --exact-stats only when you explicitly need the exact total and event-type breakdown, which can take longer on large projects. Audit event categories are normalized from the GCP operation: instance insert/delete operations are lifecycle, compute_instances_set_metadata is configuration, and iam_service_accounts_set_iam_policy is identity. Current producers exclude mutations rejected by GCP because they did not change provider state. Their absence from cloud-event results does not prove that no rejected calls occurred. A retained legacy row can still report failed; an accepted event without enough outcome evidence remains unknown, never inferred as success. Rejected-call rates can be useful security or automation-health signals, but they are not change events or causal roots. Any future rejection detector will remain outside event-story correlation. An empty filtered CLI page is a successful evidence result and says that no matching cloud events or resources were found. An ambiguous resource is not selected automatically; add provider, scope, region, type, or the exact native ID and retry. Coverage depends on enabled APIs, granted read permissions, regions, resource families, and event retention. Snapshot and reconciliation evidence is not an immediate provider notification. Missing actor, status, freshness, or provenance evidence remains unknown. Anyshift does not turn it into a success, stale verdict, unmanaged verdict, Terraform drift verdict, or causal claim.

Required Roles and Permissions

Setup Options

Minimal Setup with roles/viewerUsing only the roles/viewer role provides basic access but with limitations. Anyshift will be able to scan core GCP resources like Compute Engine, Cloud SQL, GKE, Logging, Monitoring, and Pub/Sub.However, many specialized services will not be accessible.
View all available roles that Anyshift can utilize for comprehensive infrastructure scanning:

Services Requiring Additional Roles

These services need specific roles beyond roles/viewer:
  • AI Platform: roles/aiplatform.viewer, roles/notebooks.viewer
  • API Gateway: roles/apigateway.viewer
  • Artifact Registry: roles/artifactregistry.reader
  • BigQuery: roles/bigquery.dataViewer, roles/bigquery.jobUser, roles/bigquery.metadataViewer
  • Certificate Manager: roles/certificatemanager.viewer
  • Cloud Billing: roles/billing.viewer, roles/billing.budgets.viewer
  • Cloud Build: roles/cloudbuild.builds.viewer
  • Cloud Functions: roles/cloudfunctions.viewer
  • Cloud KMS: roles/cloudkms.viewer
  • Composer: roles/composer.environmentAndStorageObjectViewer
  • Data Catalog: roles/datacatalog.viewer
  • Dataflow: roles/dataflow.viewer
  • Dataproc: roles/dataproc.viewer
  • DNS: roles/dns.reader
  • IAM: roles/iam.roleViewer, roles/iam.serviceAccountViewer, roles/iam.workloadIdentityPoolViewer
  • Memorystore/Redis: roles/redis.viewer
  • Storage: roles/storage.objectViewer
  • Workflows: roles/workflows.viewer

Services Covered by roles/viewer

These services are already accessible with the basic viewer role:
  • Cloud SQL
  • Compute Engine (including networks)
  • Container/GKE
  • Firestore
  • Logging
  • Monitoring
  • Pub/Sub
  • Service Networking

Setup Guide

Step 1 · Create a read-only service account

Terraform
Console
  1. Go to IAM & Admin → Service Accounts → Create Service Account
  2. Name: anyshift-readonly, Description: “Read-only service account for Anyshift” → Create
  3. Go to IAM & Admin → IAM → Grant Access
  4. Add the service account email and assign roles: For Quick Setup:
    • Viewer (Basic role)
    For Recommended Setup, also add:
    • API Gateway Viewer
    • Artifact Registry Reader
    • BigQuery Data Viewer
    • BigQuery Job User
    • Certificate Manager Viewer
    • Cloud Build Viewer
    • Cloud Functions Viewer
    • Cloud KMS Viewer
    • Cloud Composer Viewer
    • Data Catalog Viewer
    • Dataflow Viewer
    • Dataproc Viewer
    • DNS Reader
    • Memorystore Redis Viewer
    • Storage Object Viewer
    • Workflows Viewer
    • IAM Role Viewer
    • IAM Service Account Viewer
    • IAM Workload Identity Pool Viewer
    Tip: Use the filter box to quickly find roles. You can select multiple roles before clicking Save.
  5. Go back to Service Accounts, click on your anyshift-readonly account
  6. Go to Keys tab → Add KeyCreate new keyJSONCreate
  7. Download and securely store the JSON key file

Step 2 · Add the service account in Anyshift

Go to Integrations → GCP → Add Service Account and upload the JSON file containing the credentials.
We are working to add support for Workload Identity Federation.This will allow you to grant Anyshift access without managing service account keys, using GCP’s native identity federation capabilities.

Try Anyshift

Start mapping your GCP infrastructure today!

Create an account

Request a demo

See Anyshift Root Cause Analysis in action