Package com.google.auth.oauth2
Class AwsCredentials.Builder
- java.lang.Object
-
- com.google.auth.oauth2.OAuth2Credentials.Builder
-
- com.google.auth.oauth2.GoogleCredentials.Builder
-
- com.google.auth.oauth2.ExternalAccountCredentials.Builder
-
- com.google.auth.oauth2.AwsCredentials.Builder
-
- Enclosing class:
- AwsCredentials
public static class AwsCredentials.Builder extends ExternalAccountCredentials.Builder
-
-
Field Summary
Fields Modifier and Type Field Description private AwsSecurityCredentialsSupplierawsSecurityCredentialsSupplierprivate java.lang.StringregionalCredentialVerificationUrlOverride-
Fields inherited from class com.google.auth.oauth2.ExternalAccountCredentials.Builder
audience, clientId, clientSecret, credentialSource, environmentProvider, metricsHandler, scopes, serviceAccountImpersonationOptions, serviceAccountImpersonationUrl, subjectTokenType, tokenInfoUrl, tokenUrl, transportFactory, universeDomain, workforcePoolUserProject
-
Fields inherited from class com.google.auth.oauth2.GoogleCredentials.Builder
quotaProjectId
-
-
Constructor Summary
Constructors Constructor Description Builder()Builder(AwsCredentials credentials)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AwsCredentialsbuild()AwsCredentials.BuildersetAudience(java.lang.String audience)Sets the Security Token Service audience, which is usually the fully specified resource name of the workload/workforce pool provider.AwsCredentials.BuildersetAwsSecurityCredentialsSupplier(AwsSecurityCredentialsSupplier awsSecurityCredentialsSupplier)Sets the AWS security credentials supplier.AwsCredentials.BuildersetClientId(java.lang.String clientId)Sets the optional client ID of the service account from the console.AwsCredentials.BuildersetClientSecret(java.lang.String clientSecret)Sets the optional client secret of the service account from the console.AwsCredentials.BuildersetCredentialSource(AwsCredentialSource credentialSource)(package private) AwsCredentials.BuildersetEnvironmentProvider(EnvironmentProvider environmentProvider)Sets the optional Environment Provider.AwsCredentials.BuildersetHttpTransportFactory(HttpTransportFactory transportFactory)Sets the HTTP transport factory, creates the transport used to get access tokens.AwsCredentials.BuildersetQuotaProjectId(java.lang.String quotaProjectId)Sets the optional project used for quota and billing purposes.AwsCredentials.BuildersetRegionalCredentialVerificationUrlOverride(java.lang.String regionalCredentialVerificationUrlOverride)Sets the AWS regional credential verification URL.AwsCredentials.BuildersetScopes(java.util.Collection<java.lang.String> scopes)Sets the optional scopes to request during the authorization grant.AwsCredentials.BuildersetServiceAccountImpersonationOptions(java.util.Map<java.lang.String,java.lang.Object> optionsMap)Sets the optional service account impersonation options.AwsCredentials.BuildersetServiceAccountImpersonationUrl(java.lang.String serviceAccountImpersonationUrl)Sets the optional URL used for service account impersonation, which is required for some APIs.AwsCredentials.BuildersetSubjectTokenType(ExternalAccountCredentials.SubjectTokenTypes subjectTokenType)Sets the Security Token Service subject token type based on the OAuth 2.0 token exchange spec.AwsCredentials.BuildersetSubjectTokenType(java.lang.String subjectTokenType)Sets the Security Token Service subject token type based on the OAuth 2.0 token exchange spec.AwsCredentials.BuildersetTokenInfoUrl(java.lang.String tokenInfoUrl)Sets the optional endpoint used to retrieve account related information.AwsCredentials.BuildersetTokenUrl(java.lang.String tokenUrl)Sets the Security Token Service token exchange endpoint.AwsCredentials.BuildersetUniverseDomain(java.lang.String universeDomain)Sets the optional universe domain.AwsCredentials.BuildersetWorkforcePoolUserProject(java.lang.String workforcePoolUserProject)Sets the optional workforce pool user project number when the credential corresponds to a workforce pool and not a workload identity pool.-
Methods inherited from class com.google.auth.oauth2.ExternalAccountCredentials.Builder
setCredentialSource
-
Methods inherited from class com.google.auth.oauth2.GoogleCredentials.Builder
getQuotaProjectId, getUniverseDomain, setAccessToken
-
Methods inherited from class com.google.auth.oauth2.OAuth2Credentials.Builder
getAccessToken, getExpirationMargin, getRefreshMargin, setExpirationMargin, setRefreshMargin
-
-
-
-
Field Detail
-
awsSecurityCredentialsSupplier
private AwsSecurityCredentialsSupplier awsSecurityCredentialsSupplier
-
regionalCredentialVerificationUrlOverride
private java.lang.String regionalCredentialVerificationUrlOverride
-
-
Constructor Detail
-
Builder
Builder()
-
Builder
Builder(AwsCredentials credentials)
-
-
Method Detail
-
setAwsSecurityCredentialsSupplier
@CanIgnoreReturnValue public AwsCredentials.Builder setAwsSecurityCredentialsSupplier(AwsSecurityCredentialsSupplier awsSecurityCredentialsSupplier)
Sets the AWS security credentials supplier. The supplier should return a validAwsSecurityCredentialsobject and a valid AWS region.- Parameters:
awsSecurityCredentialsSupplier- the supplier to use.- Returns:
- this
Builderobject
-
setRegionalCredentialVerificationUrlOverride
@CanIgnoreReturnValue public AwsCredentials.Builder setRegionalCredentialVerificationUrlOverride(java.lang.String regionalCredentialVerificationUrlOverride)
Sets the AWS regional credential verification URL. If set, will override any credential verification URL provided in the credential source. If not set, the credential verification URL will default to- Parameters:
regionalCredentialVerificationUrlOverride- the AWS credential verification url to set.- Returns:
- this
Builderobject
-
setHttpTransportFactory
@CanIgnoreReturnValue public AwsCredentials.Builder setHttpTransportFactory(HttpTransportFactory transportFactory)
Description copied from class:ExternalAccountCredentials.BuilderSets the HTTP transport factory, creates the transport used to get access tokens.- Overrides:
setHttpTransportFactoryin classExternalAccountCredentials.Builder- Parameters:
transportFactory- theHttpTransportFactoryto set- Returns:
- this
Builderobject
-
setAudience
@CanIgnoreReturnValue public AwsCredentials.Builder setAudience(java.lang.String audience)
Description copied from class:ExternalAccountCredentials.BuilderSets the Security Token Service audience, which is usually the fully specified resource name of the workload/workforce pool provider.- Overrides:
setAudiencein classExternalAccountCredentials.Builder- Parameters:
audience- the Security Token Service audience to set- Returns:
- this
Builderobject
-
setSubjectTokenType
@CanIgnoreReturnValue public AwsCredentials.Builder setSubjectTokenType(java.lang.String subjectTokenType)
Description copied from class:ExternalAccountCredentials.BuilderSets the Security Token Service subject token type based on the OAuth 2.0 token exchange spec. Indicates the type of the security token in the credential file.- Overrides:
setSubjectTokenTypein classExternalAccountCredentials.Builder- Parameters:
subjectTokenType- the Security Token Service subject token type to set- Returns:
- this
Builderobject
-
setSubjectTokenType
@CanIgnoreReturnValue public AwsCredentials.Builder setSubjectTokenType(ExternalAccountCredentials.SubjectTokenTypes subjectTokenType)
Description copied from class:ExternalAccountCredentials.BuilderSets the Security Token Service subject token type based on the OAuth 2.0 token exchange spec. Indicates the type of the security token in the credential file.- Overrides:
setSubjectTokenTypein classExternalAccountCredentials.Builder- Parameters:
subjectTokenType- theSubjectTokenTypeto set- Returns:
- this
Builderobject
-
setTokenUrl
@CanIgnoreReturnValue public AwsCredentials.Builder setTokenUrl(java.lang.String tokenUrl)
Description copied from class:ExternalAccountCredentials.BuilderSets the Security Token Service token exchange endpoint.- Overrides:
setTokenUrlin classExternalAccountCredentials.Builder- Parameters:
tokenUrl- the Security Token Service token exchange url to set- Returns:
- this
Builderobject
-
setCredentialSource
@CanIgnoreReturnValue public AwsCredentials.Builder setCredentialSource(AwsCredentialSource credentialSource)
-
setServiceAccountImpersonationUrl
@CanIgnoreReturnValue public AwsCredentials.Builder setServiceAccountImpersonationUrl(java.lang.String serviceAccountImpersonationUrl)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional URL used for service account impersonation, which is required for some APIs. If this URL is not available, the access token from the Security Token Service is used directly.- Overrides:
setServiceAccountImpersonationUrlin classExternalAccountCredentials.Builder- Parameters:
serviceAccountImpersonationUrl- the service account impersonation url to set- Returns:
- this
Builderobject
-
setTokenInfoUrl
@CanIgnoreReturnValue public AwsCredentials.Builder setTokenInfoUrl(java.lang.String tokenInfoUrl)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional endpoint used to retrieve account related information. Required for gCloud session account identification.- Overrides:
setTokenInfoUrlin classExternalAccountCredentials.Builder- Parameters:
tokenInfoUrl- the token info url to set- Returns:
- this
Builderobject
-
setQuotaProjectId
@CanIgnoreReturnValue public AwsCredentials.Builder setQuotaProjectId(java.lang.String quotaProjectId)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional project used for quota and billing purposes.- Overrides:
setQuotaProjectIdin classExternalAccountCredentials.Builder- Parameters:
quotaProjectId- the quota and billing project id to set- Returns:
- this
Builderobject
-
setClientId
@CanIgnoreReturnValue public AwsCredentials.Builder setClientId(java.lang.String clientId)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional client ID of the service account from the console.- Overrides:
setClientIdin classExternalAccountCredentials.Builder- Parameters:
clientId- the service account client id to set- Returns:
- this
Builderobject
-
setClientSecret
@CanIgnoreReturnValue public AwsCredentials.Builder setClientSecret(java.lang.String clientSecret)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional client secret of the service account from the console.- Overrides:
setClientSecretin classExternalAccountCredentials.Builder- Parameters:
clientSecret- the service account client secret to set- Returns:
- this
Builderobject
-
setScopes
@CanIgnoreReturnValue public AwsCredentials.Builder setScopes(java.util.Collection<java.lang.String> scopes)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional scopes to request during the authorization grant.- Overrides:
setScopesin classExternalAccountCredentials.Builder- Parameters:
scopes- the request scopes to set- Returns:
- this
Builderobject
-
setWorkforcePoolUserProject
@CanIgnoreReturnValue public AwsCredentials.Builder setWorkforcePoolUserProject(java.lang.String workforcePoolUserProject)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional workforce pool user project number when the credential corresponds to a workforce pool and not a workload identity pool. The underlying principal must still have serviceusage.services.use IAM permission to use the project for billing/quota.- Overrides:
setWorkforcePoolUserProjectin classExternalAccountCredentials.Builder- Parameters:
workforcePoolUserProject- the workforce pool user project number to set- Returns:
- this
Builderobject
-
setServiceAccountImpersonationOptions
@CanIgnoreReturnValue public AwsCredentials.Builder setServiceAccountImpersonationOptions(java.util.Map<java.lang.String,java.lang.Object> optionsMap)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional service account impersonation options.- Overrides:
setServiceAccountImpersonationOptionsin classExternalAccountCredentials.Builder- Parameters:
optionsMap- the service account impersonation options to set- Returns:
- this
Builderobject
-
setUniverseDomain
@CanIgnoreReturnValue public AwsCredentials.Builder setUniverseDomain(java.lang.String universeDomain)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional universe domain.- Overrides:
setUniverseDomainin classExternalAccountCredentials.Builder- Parameters:
universeDomain- the universe domain to set- Returns:
- this
Builderobject
-
setEnvironmentProvider
@CanIgnoreReturnValue AwsCredentials.Builder setEnvironmentProvider(EnvironmentProvider environmentProvider)
Description copied from class:ExternalAccountCredentials.BuilderSets the optional Environment Provider.- Overrides:
setEnvironmentProviderin classExternalAccountCredentials.Builder- Parameters:
environmentProvider- theEnvironmentProviderto set- Returns:
- this
Builderobject
-
build
public AwsCredentials build()
- Specified by:
buildin classExternalAccountCredentials.Builder
-
-