Skip to content

Add support for Content-MD5 or x-amz-checksum-* headers for Object Lock compatibility #77

Description

@pmng-ncd

Hi and thanks for your work on this project!

I'm currently using pmoxs3backuproxy to push backups to an S3-compatible backend (e.g., Backblaze B2 / Wasabi / AWS S3) with Object Lock enabled.

Unfortunately, any PUT Object request to a bucket with Object Lock requires either a Content-MD5 header or a x-amz-checksum-* header (e.g., x-amz-checksum-sha256). Without this, the request fails with:

Content-MD5 OR x-amz-checksum- HTTP header is required for Put Object requests with Object Lock parameters

Feature request:

Would it be possible to add automatic support for setting one of the required headers (e.g., Content-MD5) when pushing objects to S3?

Ideally, this would be:

  • Optional (via a flag like --require-content-md5 or env var REQUIRE_CONTENT_MD5=true)
  • Automatically applied when the proxy detects a bucket with Object Lock, or forced via config

This would make the proxy fully compatible with S3 buckets that have Object Lock enabled, which is often required for backup compliance.

Let me know if I can help to test this feature!

Thanks again 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions