Skip to main content

Google Chronicle API instance error

  • March 5, 2026
  • 1 reply
  • 11 views

soargeekexplorer

I need to create Google Chronicle API instance using workload identity but I am getting permission denied error  “unable to acquire impersonated credentials”.

iam.serviceAccountTokemCreator has already been provided.

Still getting the error.

Request more insights 

1 reply

hzmndt
Staff
Forum|alt.badge.img+10
  • Staff
  • March 5, 2026

@soargeekexplorer  From Gemini: 
 

Need more info, but here are the key areas to investigate:

  1. The Principal: Who or what is trying to impersonate the service account? The roles/iam.serviceAccountTokenCreator role must be granted to the correct principal (the "actor") on the target service account (the one with Chronicle API permissions). The actor depends on your environment:

    • Google Kubernetes Engine (GKE): If your workload runs on GKE, you need to grant the role to the Kubernetes Service Account (KSA) member. The format is serviceAccount:<PROJECT_ID>.svc.id.goog[<KSA_NAMESPACE>/<KSA_NAME>].
    • Workload Identity Federation (AWS, Azure, OIDC, SAML): For workloads outside Google Cloud, the grant is typically on the Workload Identity Pool principal set. The format is principalSet://iam.googleapis.com/projects/<PROJECT_NUMBER>/locations/global/workloadIdentityPools/<POOL_ID>/* (or more specific attributes/groups).
    • Chronicle SOAR:  The SOAR system's service account (e.g., soar-python@<SOAR-PROJECT>.iam.gserviceaccount.com) needs roles/iam.serviceAccountTokenCreator on your Chronicle-enabled service account.
  2. Missing roles/iam.workloadIdentityUser: This role is often required in addition to roles/iam.serviceAccountTokenCreator for Workload Identity scenarios, especially with GKE and Workload Identity Federation. Grant this role to the same principal that gets serviceAccountTokenCreator on the target service account.

  3. Target Service Account Permissions: Ensure the service account you are trying to impersonate itself has the necessary permissions to access the Chronicle API (e.g., roles/chronicle.editor or roles/chronicle.viewer). The impersonation error is about getting the token, but once obtained, the token will only have the permissions of the impersonated account.