Skip to content

Minio Client AWS Auth only supports Access Keys; Add Options to Credential Chain #32271

Closed
@ghost

Description

Feature Description

Objective

We propose the following features added to the Gitea release cycle (release/v1.22):

  • Merge the credential chain reference for the Minio client credentials from the main branch into the current release cycle
  • Stretch goal: Add the Minio.Credential.IAM_AWS function getEKSPodIdentityCredentials to this credential chain at the end, this way native Kubernetes authentication is handled.

Details

We have deployed Gitea using the Helm Chart on our AWS EKS cluster. We’ve been able to stand it up with supporting infrastructure and figure out configurations, but we’ve discovered that the implementation of the Minio client under the Gitea release branch is only looking at AWS Access Keys (long term credentials) for authentication with AWS. The recommended best practice from AWS prefers relying on temporary credentials instead of long-term credentials, such as access keys where possible.

We hope to see implementation of short-lived tokens to authenticate the Minio client with AWS APIs, as this would provide better security and simplified implementation.

Expanding on the credential chain, this currently does not import other supported features from the minio-go SDK. Notably, as we are on AWS EKS, the ideal solution we were hoping to implement is using IRSA roles which would allow direct usage of the token file generated by the Service Account.

References

Screenshots

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    type/proposalThe new feature has not been accepted yet but needs to be discussed first.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions