You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Previously, the authentication mechanism for testeng Identity-Aware
Proxy protected endpoints was relying on a shared ervice account key
accessed via a GCS bucket. This was causing the need for secret rotation
and was limiting auditability.
This patch introduces a new mechanism based on short-lived OAuth tokens
and service account impersonation through the default local credentials.
The identity of the caller is determined with the following precedence:
1. `GOOGLE_EPHEMERAL_CREDENTIALS` environment variable
2. Application Default Credentials (ADC):
a. `GOOGLE_APPLICATION_CREDENTIALS` environment variable
b. Default service account (application_default_credentials.json) file
c. App Engine standard environment
d. GCE metadata server
3. `gcloud config config-helper` output
The caller needs to have the `roles/iam.serviceAccountTokenCreator` role
on the service account to be able to impersonate the service account and
generate short lived OAuth AccessTokens.
Both `promhelperclient` and `grafana annotations` switch to this new
method, via the new `IAPTokenSourceIface` interface that handles the
service account impersonation, the AccessToken caching and renewal and
that provides a pre-authenticated `http.Client`.
Epic: none
Release note: None
0 commit comments