Class ProcessCredentialsProvider
- java.lang.Object
-
- software.amazon.awssdk.auth.credentials.ProcessCredentialsProvider
-
- All Implemented Interfaces:
AutoCloseable
,AwsCredentialsProvider
,IdentityProvider<AwsCredentialsIdentity>
,ToCopyableBuilder<ProcessCredentialsProvider.Builder,ProcessCredentialsProvider>
,SdkAutoCloseable
public final class ProcessCredentialsProvider extends Object implements AwsCredentialsProvider, SdkAutoCloseable, ToCopyableBuilder<ProcessCredentialsProvider.Builder,ProcessCredentialsProvider>
A credentials provider that can load credentials from an external process. This is used to support the credential_process setting in the profile credentials file. See sourcing credentials from external processes for more information.This class can be initialized using
builder()
.Available settings:
- Command - The command that should be executed to retrieve credentials.
- CredentialRefreshThreshold - The amount of time between when the credentials expire and when the credentials should start to be refreshed. This allows the credentials to be refreshed *before* they are reported to expire. Default: 15 seconds.
- ProcessOutputLimit - The maximum amount of data that can be returned by the external process before an exception is raised. Default: 64000 bytes (64KB).
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ProcessCredentialsProvider.Builder
Used to configure and create aProcessCredentialsProvider
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ProcessCredentialsProvider.Builder
builder()
Retrieve a new builder that can be used to create and configure aProcessCredentialsProvider
.void
close()
AwsCredentials
resolveCredentials()
ReturnsAwsCredentials
that can be used to authorize an AWS request.ProcessCredentialsProvider.Builder
toBuilder()
String
toString()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface software.amazon.awssdk.auth.credentials.AwsCredentialsProvider
identityType, resolveIdentity
-
Methods inherited from interface software.amazon.awssdk.identity.spi.IdentityProvider
resolveIdentity, resolveIdentity
-
Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
-
-
-
Method Detail
-
builder
public static ProcessCredentialsProvider.Builder builder()
Retrieve a new builder that can be used to create and configure aProcessCredentialsProvider
.
-
resolveCredentials
public AwsCredentials resolveCredentials()
Description copied from interface:AwsCredentialsProvider
ReturnsAwsCredentials
that can be used to authorize an AWS request. Each implementation of AWSCredentialsProvider can choose its own strategy for loading credentials. For example, an implementation might load credentials from an existing key management system, or load new credentials when credentials are rotated.If an error occurs during the loading of credentials or credentials could not be found, a runtime exception will be raised.
- Specified by:
resolveCredentials
in interfaceAwsCredentialsProvider
- Returns:
- AwsCredentials which the caller can use to authorize an AWS request.
-
close
public void close()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceSdkAutoCloseable
-
toBuilder
public ProcessCredentialsProvider.Builder toBuilder()
- Specified by:
toBuilder
in interfaceToCopyableBuilder<ProcessCredentialsProvider.Builder,ProcessCredentialsProvider>
-
-