Adding support for AWS IAM role credentials #128
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Besides using IAM user credentials, AWS automatically injects credentials into most of their services (EC2, Fargate, Lambda, ...). The AWS SDK makes use of these credentials out-of-the-box. However, that mechanism does not work when setting the values manually, as it was the case inside the S3 provider so far.
Therefore, I made the environment variables
STORE_ACCESS_KEY
andSTORE_SECRET_KEY
optional. When the S3 client gets created without specific credentials, it will automatically try to access the IAM role credentials when running on an AWS platform like EC2 or Fargate.By the way, this feature has been requested before. See #95 for details.
Many thanks to @QingWei-Li for maintaining this amazing project. It is a great example for a slick web application built on S3.