Why ?¶
First of all, yes, this is another S3 proxy written in Golang.
I've created this project because I couldn't find any other that allow to proxy multiple S3 buckets or to have custom templates with OpenID Connect authentication and also to get, upload and delete files.
Features¶
- Multi S3 bucket proxy
- Index document (display index document instead of listing when found)
- Custom templates
- AWS S3 Login from files or environment variables
- Custom S3 endpoints supported
- Basic Authentication support
- Multiple Basic Authentication support
- OpenID Connect Authentication support
- Multiple OpenID Connect Provider support
- Redirect to original host and path with OpenID Connect authentication
- Target mount point configuration with hostname and multiple path support
- Authentication by path and http method on each bucket
- Allow to publish files on S3 bucket
- Allow to delete files on S3 bucket
- Open Policy Agent integration for authorizations
- Configuration hot reload
- CORS support
- Prometheus metrics
- S3 Key Rewrite possibility
See more information on these features in the "Feature Guide".
Advanced interfaces¶
Looking for more advanced interfaces. Take a look on this project: s3-proxy-interfaces.
Provided interfaces in the project are really simple and based on NGinX template. Those are React based, with Material design and with customization.
Want to contribute ?¶
- Read the CONTRIBUTING guide
Inspired by¶
Thanks¶
- My wife BH to support me doing this
Author¶
- Oxyno-zeta (Havrileck Alexandre)
License¶
Apache 2.0 (See in LICENSE)