in amazon-kinesis-connector-flink/src/main/java/software/amazon/kinesis/connectors/flink/util/AwsV2Util.java [194:224]
private static AwsCredentialsProvider getCredentialsProvider(final Properties configProps, final String configPrefix) {
CredentialProvider credentialProviderType = AWSUtil.getCredentialProviderType(configProps, configPrefix);
switch (credentialProviderType) {
case ENV_VAR:
return EnvironmentVariableCredentialsProvider.create();
case SYS_PROP:
return SystemPropertyCredentialsProvider.create();
case PROFILE:
return getProfileCredentialProvider(configProps, configPrefix);
case BASIC:
return () -> AwsBasicCredentials.create(
configProps.getProperty(AWSConfigConstants.accessKeyId(configPrefix)),
configProps.getProperty(AWSConfigConstants.secretKey(configPrefix)));
case ASSUME_ROLE:
return getAssumeRoleCredentialProvider(configProps, configPrefix);
case WEB_IDENTITY_TOKEN:
return getWebIdentityTokenFileCredentialsProvider(WebIdentityTokenFileCredentialsProvider.builder(), configProps, configPrefix);
case AUTO:
return DefaultCredentialsProvider.create();
default:
throw new IllegalArgumentException("Credential provider not supported: " + credentialProviderType);
}
}