On this line:
case ACCESS_KEY_PROVIDER:
return StaticCredentialsProvider.create(AwsBasicCredentials.create(
config.get(Constants.ACCESS_KEY), config.get(Constants.SECRET_KEY)));
case EC2_METADATA_PROVIDER:
return InstanceProfileCredentialsProvider.create();
case NONE_PROVIDER:
return AnonymousCredentialsProvider.create();
case ASSUME_ROLE_PROVIDER:
return new STSCredentialProviderV2(config);
default:
throw new IllegalStateException(config.get(Constants.AWS_CREDENTIALS_PROVIDER));
}
}
private class BucketCreator extends ContainerCreator {
private final Configuration parentConf;
private final String bucketName;
BucketCreator(Configuration parentConf, String bucketName) {
super();
this.parentConf = parentConf;
the plugin fails if it does not recognize the CredentialsProvider. Instead, it should use the DefaultCredentialsProvider. This will allow dremio to use credentials provided via Kubernetes service accounts.