apache / apache/fluss

[File system] Add `AssumeRoleWithWebIdentity` STS functionality for temporary credentials to S3 file system to support MinIO

Open
#621 0 comments 0 reactions 0 assignees View on GitHub
component=filesystem
Dominant language
Java
Stars
2.1k
Forks
625
Avg merge
3d 14h
Merged PRs (30d)
97

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/alibaba/fluss/issues) and found nothing similar.

### Motivation

The Fluss S3 file system currently only supports obtaining temporary credentials via session tokens. However, this STS endpoint is not supported by other S3-compatible object stores, e.g., [MinIO](https://min.io/docs/minio/linux/developers/security-token-service.html#id1). Using `AssumeRoleWithWebIdentity` allows Fluss users to use MinIO instead of AWS S3.

### Solution

TBD

### Anything else?

- `AssumeRoleWithWebIdentity` is currently the only endpoint that is supported by both [MinIO](https://min.io/docs/minio/linux/developers/security-token-service.html#id1) and [AWS S3](https://docs.aws.amazon.com/STS/latest/APIReference/API_Operations.html)
- This issue is blocked by #613

### Willingness to contribute

- [x] I'm willing to submit a PR!

Contributor guide

No contributing guide indexed for this repository

Research direction

No implementation file or test is named. Start with the existing S3 file system flow for session-token credentials, review the #613 blocker, and compare the AssumeRoleWithWebIdentity endpoint requirements for AWS S3 and MinIO. Done means temporary credentials can be obtained through that endpoint for both providers.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, java
Domain
cloud
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.