The IdentityPool credential source. Dictates the retrieval method of the external credential,
which can either be through a metadata server or a local file.
If this is a file based 3P credential, the credentials file can be retrieved using the
file key.
If this is URL-based 3p credential, the metadata server URL can be retrieved using the url
key.
The third party credential can be provided in different formats, such as text or JSON. The
format can be specified using the format header, which returns a map with keys type and
subject_token_field_name. If the type is json, the subject_token_field_name must be
provided. If no format is provided, we expect the token to be in the raw text format.
Optional headers can be present, and should be keyed by headers.
[[["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,["# Class IdentityPoolCredentialSource (1.38.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.38.0 (latest)](/java/docs/reference/google-auth-library/latest/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.37.1](/java/docs/reference/google-auth-library/1.37.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.36.0](/java/docs/reference/google-auth-library/1.36.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.35.0](/java/docs/reference/google-auth-library/1.35.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.34.0](/java/docs/reference/google-auth-library/1.34.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.33.1](/java/docs/reference/google-auth-library/1.33.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.32.1](/java/docs/reference/google-auth-library/1.32.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.31.0](/java/docs/reference/google-auth-library/1.31.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.30.1](/java/docs/reference/google-auth-library/1.30.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.29.1-SNAPSHOT](/java/docs/reference/google-auth-library/1.29.1-SNAPSHOT/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.28.0](/java/docs/reference/google-auth-library/1.28.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.27.0](/java/docs/reference/google-auth-library/1.27.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.26.0](/java/docs/reference/google-auth-library/1.26.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.25.0](/java/docs/reference/google-auth-library/1.25.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.24.1](/java/docs/reference/google-auth-library/1.24.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.20.0](/java/docs/reference/google-auth-library/1.20.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.19.0](/java/docs/reference/google-auth-library/1.19.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.18.0](/java/docs/reference/google-auth-library/1.18.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.7.0](/java/docs/reference/google-auth-library/1.7.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.6.1](/java/docs/reference/google-auth-library/1.6.1/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.4.0](/java/docs/reference/google-auth-library/1.4.0/com.google.auth.oauth2.IdentityPoolCredentialSource)\n- [1.3.0](/java/docs/reference/google-auth-library/1.3.0/com.google.auth.oauth2.IdentityPoolCredentialSource) \n\n public class IdentityPoolCredentialSource extends ExternalAccountCredentials.CredentialSource\n\nThe IdentityPool credential source. Dictates the retrieval method of the external credential,\nwhich can either be through a metadata server or a local file. \n\nInheritance\n-----------\n\n[java.lang.Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e com.google.auth.oauth2.ExternalAccountCredentials.CredentialSource \\\u003e IdentityPoolCredentialSource \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nConstructors\n------------\n\n### IdentityPoolCredentialSource(Map\\\u003cString,Object\\\u003e credentialSourceMap)\n\n public IdentityPoolCredentialSource(Map\u003cString,Object\u003e credentialSourceMap)\n\nThe source of the 3P credential.\n\nIf this is a file based 3P credential, the credentials file can be retrieved using the\n`file` key.\n\nIf this is URL-based 3p credential, the metadata server URL can be retrieved using the `url`\nkey.\n\nThe third party credential can be provided in different formats, such as text or JSON. The\nformat can be specified using the `format` header, which returns a map with keys `type` and\n`subject_token_field_name`. If the `type` is json, the `subject_token_field_name` must be\nprovided. If no format is provided, we expect the token to be in the raw text format.\n\nOptional headers can be present, and should be keyed by `headers`.\n\nMethods\n-------\n\n### getCertificateConfig()\n\n public IdentityPoolCredentialSource.CertificateConfig getCertificateConfig()\n\nGets the configuration for X.509-based workload credentials (mTLS), if configured.\n\n### getCredentialLocation()\n\n public String getCredentialLocation()\n\nGets the location of the credential source. This could be a file path or a URL, depending on\nthe IdentityPoolCredentialSourceType.\n\n### setCredentialLocation(String credentialLocation)\n\n public void setCredentialLocation(String credentialLocation)\n\nSets the location of the credential source. This method should be used to update the credential\nlocation."]]