Reopen PR #2973 (Support ECS TaskRole in S3 storage driver). #3245
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.
This PR reopens #2973 and fixes still hardcoded list of credential providers:
StaticProvider
EnvVarProvider
SharedCredentialProvider
EC2RoleProvider
Instead it relies on SDK defaults when creating a new AWS Config and AWS Session. And only overrides them with
StaticProvider
ifaccesskey
andsecretkey
are provided viaconfig.yml
:As the result, it uses AssumeRoleWithWebIdentity credential provider (in
session.resolveCredentials
) that resolves assigned IAM role to K8s Service Accounts via OIDC token. Please see here for more details.This changed have been tested in the following scenario to grant access to AWS S3 Bucket:
AWS_ACCESS_KEY_ID
andAWS_SECRET_ACCESS_KEY
on a local machineUpstreamed from Docker Hub