Alexey Minakov created CAMEL-15779:
--------------------------------------
Summary: Use DefaultAWSCredentialsProviderChain to load AWS
credentials from different sources
Key: CAMEL-15779
URL: https://issues.apache.org/jira/browse/CAMEL-15779
Project: Camel
Issue Type: Improvement
Reporter: Alexey Minakov
Currently both
[aws.s3|https://github.com/apache/camel/blob/master/components/camel-aws-s3/src/main/java/org/apache/camel/component/aws/s3/client/impl/S3ClientIAMOptimizedImpl.java#L20]
and
[aws2.s3|https://github.com/apache/camel/blob/master/components/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/client/impl/AWS2S3ClientIAMOptimizedImpl.java#L26]
IAM optimized client implementations are using a hard-coded
[InstanceProfileCredentialsProvider|https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/InstanceProfileCredentialsProvider.html].
It means that you can only use it from EC2 instance, and it will not work in
ECS or Fargate task.
It will make much more sense to use a
[DefaultCredentialsProviderChain|https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/DefaultAWSCredentialsProviderChain.html]
([DefaultCredentialsProvider|https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/auth/credentials/DefaultCredentialsProvider.html]
for v2). In this case we will be able to use multiple methods for supplying
credentials - Java System Properties, Environment Variables, Credential
profiles file, Credentials delivered through the Amazon EC2 container service,
Instance profile credentials delivered through the Amazon EC2 metadata service.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)