GitHub

Google OIDC tokens for a Cloud service account.

Google issues OIDC tokens for service accounts from https://accounts.google.com. The account email identifies the caller. The numeric unique ID stays the same if the account is deleted and recreated.

Docs and discovery

DocsService account credentials
Issuerhttps://accounts.google.com
Discoveryhttps://accounts.google.com/.well-known/openid-configuration

The unique ID is on IAM, Service Accounts, Unique ID.

Token

Issuerhttps://accounts.google.com
AudienceThe audience the caller requests
Emailemail
Unique IDsub, optional

Fields

FieldClaimRequiredValidation
Service account emailemailYesA valid email address.
Unique IDsubNoDigits only.
AudienceaudYesThe audience the caller requests.
Additional claimsotherNoCannot reuse aud, email, or sub.

Example policy

{
  issuer: "https://accounts.google.com",
  claims: {
    aud: ["https://app.example.com"],
    email: ["bot@acme.iam.gserviceaccount.com"],
    sub: ["117"],
  },
}

Add a field

Edit components/oidc/provider-google.tsx after install. For a one-off claim, use Additional claims. For its own input, add it to Fields (or schema), DEFAULTS, compile, parse, FIRST_CLASS_CLAIMS, and the form.

See Add a field.