Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for assuming a role in the provided AWS config #10835

Open
johscheuer opened this issue Aug 25, 2023 · 3 comments
Open

Add support for assuming a role in the provided AWS config #10835

johscheuer opened this issue Aug 25, 2023 · 3 comments
Assignees

Comments

@johscheuer
Copy link
Contributor

This is currently a limitation of the AWS C++ SDK and needs some changes to the FDBAWSCredentialsProvider.cpp , one of the issues in the AWS C++ SDK had a "solution": aws/aws-sdk-cpp#150 (comment). It would be great to add support for assuming a role with the source_profile to allow such configurations to make use of the SDK auth.

There are some other limitation around the AWS C++ SDK that should be documented like: aws/aws-sdk-cpp#1963.

@jzhou77
Copy link
Contributor

jzhou77 commented Sep 8, 2023

#10880 fixes this.

@hfu94
Copy link
Contributor

hfu94 commented Sep 8, 2023

the proposed change in github issue is to use a AWSCredentialsProvider who consists of multiple credentials. While AWS client can accepts a AWSCredentialsProvider OR a single credential, and AWSClient can find the correct credential smartly when used. Unfortunately our code only gets a single credential and use it for a connection, so I guess refactoring our code to use AWS client is the way to go.. Let me know
AWS:
S3Client constructor is called here
it finally goes to AWSClient constructor here
when it is used, it get different creds by name here
Our code
S3BlobStoreEndpoint get a single credential and construct a S3BlobStoreEndpoint::Credentials to build connection here

@hfu94
Copy link
Contributor

hfu94 commented Sep 8, 2023

so it seems a major refactor on fdb side to adopt aws client is needed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants