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

Use AWS Rust SDK To Source Credentials For S3 #19022

Closed
tustvold opened this issue Sep 30, 2024 · 2 comments
Closed

Use AWS Rust SDK To Source Credentials For S3 #19022

tustvold opened this issue Sep 30, 2024 · 2 comments
Labels
A-io-cloud Area: reading/writing to cloud storage enhancement New feature or an improvement of an existing feature

Comments

@tustvold
Copy link

tustvold commented Sep 30, 2024

Description

Problem

object_store provides a limited selection of common authentication mechanisms, with a particular focus on those used in server contexts. It does not, however, seek to replicate the entire credentials setup of the various SDKs. Polars is often run on end user devices and therefore people wish for it to support a broader range of authentication options.

object_store exposes a CredentialProvider API that can be used to provide an alternative way to source credentials.

Proposal

#18979 tracks exposing CredentialProvider in a way that it can be configured, there are, however, some design questions around what this might look like through a python API.

An alternative would be for polars to provide an option to use aws-sdk-rust to source credentials, much like datafusion-cli does.

Alternatives Considered

Users could use software like aws-vault to generate session credentials, whilst this has other security benefits, for various reasons people may not wish to do this.

We could expose the full CredentialProvider API to users. This would be more flexible, support providers other than AWS, and avoid adding some non-trivial additional dependencies, but requires more design work.

Related Context

@tustvold tustvold added the enhancement New feature or an improvement of an existing feature label Sep 30, 2024
@alamb
Copy link

alamb commented Oct 16, 2024

BTW here is an example of how we use the AWS SKD to get credentials in datafusion-cli:

https://github.com/apache/datafusion/blob/747001a41481e0cf39dc758a85d1bdb64fdeb7c0/datafusion-cli/src/object_storage.rs#L65-L133

@kylebarron
Copy link
Contributor

It looks like this is closed by #18979?

@tustvold tustvold closed this as completed Feb 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-io-cloud Area: reading/writing to cloud storage enhancement New feature or an improvement of an existing feature
Projects
None yet
Development

No branches or pull requests

4 participants