s3-http-proxy

command module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 4, 2025 License: Apache-2.0 Imports: 17 Imported by: 0

README

About

A minimalist s3 http proxy implementation with a small set of very well established direct dependencies that is easy to audit and trust.

It supports serving any path in a bucket with the following optional features:

  • Tls support
  • Basic auth support
  • Adding a path prefix to the download urls

Usage

A configuration yaml file (in the process' running directory and named config.yml by default, though that behavior is customizable with the S3_HTTP_PROXY_CONFIG_FILE environment variable) in the following format should be provided:

s3:
  endpoint: <ip>:<port> formatted endpoint for your s3 api
  region: Region of your s3 bucket
  bucket: Your s3 bucket
  ca_cert: Path to a CA file used to authentify the S3 store server certificate. Can be omited if the S3 store server certificate has been signed by a well established CA.
  credentials: Path to a yaml authentication file containing two keys: 'access_key' and 'secret_key'. These are the credentials the client will present to the S3 store.
server:
  port: Post the server should be listening on
  address: Ip the server should bind on
  basic_auth: Path to yaml basic auth file if you want basic auth
  tls:
    certificate: Path to a server certificate if the server should serve over tls
    key: Path to a server private key if the server should serve over tls
  debug_mode: Whether the server should output debug logs
download_prefix: Prefix that should prepend file path to downloads. For example, if you specify "/download" here and try to download at the path "/download/catA/myfile.txt", then your s3 bucket should contain the key "catA/myfile.txt" 

If you are using basic auth, you will also have a basic auth file that looks like this:

<username1>: <password1>
<username2>: <password2>
...

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL