AWS external account client. This is used for AWS workloads, where AWS STS GetCallerIdentity serialized signed requests are exchanged for GCP access token.
Base external account client. This is used to instantiate AuthClients for exchanging external account credentials for GCP access token and authorizing requests to GCP APIs. The base class implements common logic for exchanging various type of external credentials for GCP access token. The logic of determining and retrieving the external credential based on the environment and credential_source will be left for the subclasses.
Defines a set of Google credentials that are downscoped from an existing set of Google OAuth2 credentials. This is useful to restrict the Identity and Access Management (IAM) permissions that a short-lived credential can use. The common pattern of usage is to have a token broker with elevated access generate these downscoped credentials from higher access source credentials and pass the downscoped short-lived access tokens to a token consumer via some secure authenticated channel for limited access to Google Cloud Storage resources.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Package google-auth-library (9.0.0)\n\nVersion latestkeyboard_arrow_down\n\n- [9.0.0 (latest)](/nodejs/docs/reference/google-auth-library/latest/overview)\n- [8.7.0](/nodejs/docs/reference/google-auth-library/8.7.0/overview)\n- [8.6.0](/nodejs/docs/reference/google-auth-library/8.6.0/overview)\n- [8.5.2](/nodejs/docs/reference/google-auth-library/8.5.2/overview)\n- [8.3.0](/nodejs/docs/reference/google-auth-library/8.3.0/overview)\n- [8.2.0](/nodejs/docs/reference/google-auth-library/8.2.0/overview)\n- [8.1.1](/nodejs/docs/reference/google-auth-library/8.1.1/overview)\n- [7.14.1](/nodejs/docs/reference/google-auth-library/7.14.1/overview)\n- [7.13.0](/nodejs/docs/reference/google-auth-library/7.13.0/overview)\n- [7.12.0](/nodejs/docs/reference/google-auth-library/7.12.0/overview)\n- [7.10.4](/nodejs/docs/reference/google-auth-library/7.10.4/overview)\n- [7.9.1](/nodejs/docs/reference/google-auth-library/7.9.1/overview)\n- [7.8.0](/nodejs/docs/reference/google-auth-library/7.8.0/overview)\n- [7.7.0](/nodejs/docs/reference/google-auth-library/7.7.0/overview)\n- [7.6.2](/nodejs/docs/reference/google-auth-library/7.6.2/overview)\n- [7.5.0](/nodejs/docs/reference/google-auth-library/7.5.0/overview)\n- [7.4.1](/nodejs/docs/reference/google-auth-library/7.4.1/overview)\n- [7.3.0](/nodejs/docs/reference/google-auth-library/7.3.0/overview)\n- [7.2.0](/nodejs/docs/reference/google-auth-library/7.2.0/overview)\n- [7.1.2](/nodejs/docs/reference/google-auth-library/7.1.2/overview) \n\nClasses\n-------\n\n### [AwsClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/awsclient)\n\nAWS external account client. This is used for AWS workloads, where AWS STS GetCallerIdentity serialized signed requests are exchanged for GCP access token.\n\n### [BaseExternalAccountClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/baseexternalaccountclient)\n\nBase external account client. This is used to instantiate AuthClients for exchanging external account credentials for GCP access token and authorizing requests to GCP APIs. The base class implements common logic for exchanging various type of external credentials for GCP access token. The logic of determining and retrieving the external credential based on the environment and credential_source will be left for the subclasses.\n\n### [Compute](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/compute)\n\n### [DefaultTransporter](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/defaulttransporter)\n\n### [DownscopedClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/downscopedclient)\n\nDefines a set of Google credentials that are downscoped from an existing set of Google OAuth2 credentials. This is useful to restrict the Identity and Access Management (IAM) permissions that a short-lived credential can use. The common pattern of usage is to have a token broker with elevated access generate these downscoped credentials from higher access source credentials and pass the downscoped short-lived access tokens to a token consumer via some secure authenticated channel for limited access to Google Cloud Storage resources.\n\n### [ExternalAccountClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/externalaccountclient)\n\nDummy class with no constructor. Developers are expected to use fromJSON.\n\n### [GoogleAuth](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/googleauth)\n\n### [IAMAuth](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/iamauth)\n\n### [IdentityPoolClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/identitypoolclient)\n\nDefines the Url-sourced and file-sourced external account clients mainly used for K8s and Azure workloads.\n\n### [IdTokenClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/idtokenclient)\n\n### [Impersonated](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/impersonated)\n\n### [JWT](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/jwt)\n\n### [JWTAccess](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/jwtaccess)\n\n### [LoginTicket](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/loginticket)\n\n### [OAuth2Client](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/oauth2client)\n\n### [UserRefreshClient](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/userrefreshclient)\n\nInterfaces\n----------\n\n### [AwsClientOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/awsclientoptions)\n\nAWS credentials JSON interface. This is used for AWS workloads.\n\n### [BaseExternalAccountClientOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/baseexternalaccountclientoptions)\n\nBase external account credentials json interface.\n\n### [Certificates](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/certificates)\n\n### [Claims](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/claims)\n\n### [CodeVerifierResults](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/codeverifierresults)\n\nThe results from the `generateCodeVerifierAsync` method. To learn more, See the sample: \u003chttps://github.com/googleapis/google-auth-library-nodejs/blob/main/samples/oauth2-codeVerifier.js\u003e\n\n### [ComputeOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/computeoptions)\n\n### [CredentialAccessBoundary](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/credentialaccessboundary)\n\nDefines an upper bound of permissions available for a GCP credential.\n\n### [CredentialBody](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/credentialbody)\n\n### [CredentialRequest](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/credentialrequest)\n\n### [Credentials](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/credentials)\n\n### [GenerateAuthUrlOpts](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/generateauthurlopts)\n\n### [GetTokenOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/gettokenoptions)\n\n### [GoogleAuthOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/googleauthoptions)\n\n### [IdentityPoolClientOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/identitypoolclientoptions)\n\nUrl-sourced/file-sourced credentials json interface. This is used for K8s and Azure workloads.\n\n### [IdTokenProvider](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/idtokenprovider)\n\n### [ImpersonatedOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/impersonatedoptions)\n\n### [JWTInput](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/jwtinput)\n\n### [JWTOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/jwtoptions)\n\n### [OAuth2ClientOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/oauth2clientoptions)\n\n### [ProjectIdCallback](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/projectidcallback)\n\n### [RefreshOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/refreshoptions)\n\n### [RequestMetadata](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/requestmetadata)\n\n### [TokenInfo](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/tokeninfo)\n\n### [TokenPayload](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/tokenpayload)\n\n### [UserRefreshClientOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/userrefreshclientoptions)\n\n### [VerifyIdTokenOptions](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/verifyidtokenoptions)\n\nEnums\n-----\n\n### [CodeChallengeMethod](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/codechallengemethod)\n\n### [GCPEnv](/nodejs/docs/reference/google-auth-library/latest/google-auth-library/gcpenv)\n\nVariables\n---------\n\n### auth\n\n auth: GoogleAuth\n\nType Aliases\n------------\n\n### ExternalAccountClientOptions\n\n export declare type ExternalAccountClientOptions = IdentityPoolClientOptions | AwsClientOptions;"]]