A reverse proxy for S3 buckets with GET, PUT, DELETE operations and OpenID Connect/Basic Auth authentication.
S3 Proxy is a reverse proxy server that provides authenticated access to Amazon S3 buckets. It allows users to perform GET, PUT, and DELETE operations on S3 objects through a secure gateway with support for OpenID Connect and Basic Authentication. It solves the problem of exposing S3 buckets directly by adding a configurable authentication and authorization layer.
DevOps engineers and developers who need to securely expose S3 buckets to users or applications with fine-grained access control and custom authentication mechanisms.
Developers choose S3 Proxy for its robust authentication options, granular permission controls, and ability to customize how S3 content is presented, all while being lightweight and easy to deploy via Docker.
S3 Reverse Proxy with GET, PUT and DELETE methods and authentication (OpenID Connect and Basic Auth)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Allows serving multiple S3 buckets from a single proxy instance, simplifying infrastructure for multi-tenant or complex file storage setups, as highlighted in the multi-bucket proxy feature.
Supports Basic Authentication and OpenID Connect with multiple providers, enabling seamless integration with enterprise SSO systems for secure access control.
Configurable authentication rules per path and HTTP method (GET, PUT, DELETE) for each bucket, providing precise security policies tailored to specific use cases.
Offers custom templates to modify how S3 content is displayed, allowing for branded interfaces or specific layout requirements without altering the underlying data.
Includes Prometheus metrics out-of-the-box, facilitating easy monitoring of proxy performance and usage patterns for operational oversight.
Setting up authentication rules, bucket mappings, and templates requires detailed YAML configuration, which can be verbose and error-prone for complex deployments.
There is no polished out-of-the-box interface; advanced UI features necessitate using the separate s3-proxy-interfaces project, adding to setup effort.
Adding a proxy layer introduces latency compared to direct S3 access, which might impact high-throughput applications or real-time file operations.