S3 default storage class breaks Minio compatibility #445

Open
opened 2026-04-05 21:17:47 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @tycho on 7/28/2025

This line:

a0198d8d7c/src/config.rs (L1243)

Causes problems if using Minio as the S3 endpoint:

[REQUEST s3.PutObject] [2025-07-28T10:34:52.211] [Client IP: redacted]
PUT /rsa_key.pem
Proto: HTTP/1.1
Host: [redacted]
X-Amz-Content-Sha256: UNSIGNED-PAYLOAD
X-Forwarded-For: [redacted]
X-Forwarded-Proto: https
Accept: */*
Authorization: AWS4-HMAC-SHA256 Credential=vaultwarden/20250728/us-east-1/s3/aws4_request, SignedHeaders=content-length;host;x-amz-content-sha256;x-amz-date;x-amz-storage-class, Signature=4d257b5c8807a7cddf1c2c49749af1f96dce936a0cdf11f96ed363fce5323f81
X-Amz-Date: 20250728T173452Z
X-Amz-Storage-Class: INTELLIGENT_TIERING
X-Real-Ip: [redacted]
Accept-Encoding: gzip, br, zstd, deflate
Content-Length: 1675
<BLOB>
[RESPONSE] [2025-07-28T10:34:52.211] [ Duration 58µs TTFB 50.045µs ↑ 153 B  ↓ 338 B ]
400 Bad Request
Content-Length: 338
Content-Type: application/xml
Strict-Transport-Security: max-age=31536000; includeSubDomains
Vary: Origin,Accept-Encoding
X-Amz-Id-2: 37b62f02de360c6949659e1d2fb72852efb5d74e5dcbc7d4e665920a1c72a29e
X-Ratelimit-Limit: 20413
X-Xss-Protection: 1; mode=block
Server: MinIO
X-Amz-Request-Id: 18567AC52E4FC471
X-Content-Type-Options: nosniff
X-Ratelimit-Remaining: 20413
Accept-Ranges: bytes
<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>InvalidStorageClass</Code><Message>Invalid storage class.</Message><Key>rsa_key.pem</Key><BucketName>vaultwarden</BucketName><Resource>/rsa_key.pem</Resource><RequestId>18567AC52E4FC471</RequestId><HostId>37b62f02de360c6949659e1d2fb72852efb5d74e5dcbc7d4e665920a1c72a29e</HostId></Error>

Can that storage class configuration be made user-configurable or even optional, please?

*Originally created by @tycho on 7/28/2025* This line: https://github.com/dani-garcia/vaultwarden/blob/a0198d8d7cadc666643a4e32a2a8d4217038ea3a/src/config.rs#L1243 Causes problems if using [Minio](https://github.com/minio) as the S3 endpoint: ``` [REQUEST s3.PutObject] [2025-07-28T10:34:52.211] [Client IP: redacted] PUT /rsa_key.pem Proto: HTTP/1.1 Host: [redacted] X-Amz-Content-Sha256: UNSIGNED-PAYLOAD X-Forwarded-For: [redacted] X-Forwarded-Proto: https Accept: */* Authorization: AWS4-HMAC-SHA256 Credential=vaultwarden/20250728/us-east-1/s3/aws4_request, SignedHeaders=content-length;host;x-amz-content-sha256;x-amz-date;x-amz-storage-class, Signature=4d257b5c8807a7cddf1c2c49749af1f96dce936a0cdf11f96ed363fce5323f81 X-Amz-Date: 20250728T173452Z X-Amz-Storage-Class: INTELLIGENT_TIERING X-Real-Ip: [redacted] Accept-Encoding: gzip, br, zstd, deflate Content-Length: 1675 <BLOB> [RESPONSE] [2025-07-28T10:34:52.211] [ Duration 58µs TTFB 50.045µs ↑ 153 B ↓ 338 B ] 400 Bad Request Content-Length: 338 Content-Type: application/xml Strict-Transport-Security: max-age=31536000; includeSubDomains Vary: Origin,Accept-Encoding X-Amz-Id-2: 37b62f02de360c6949659e1d2fb72852efb5d74e5dcbc7d4e665920a1c72a29e X-Ratelimit-Limit: 20413 X-Xss-Protection: 1; mode=block Server: MinIO X-Amz-Request-Id: 18567AC52E4FC471 X-Content-Type-Options: nosniff X-Ratelimit-Remaining: 20413 Accept-Ranges: bytes <?xml version="1.0" encoding="UTF-8"?> <Error><Code>InvalidStorageClass</Code><Message>Invalid storage class.</Message><Key>rsa_key.pem</Key><BucketName>vaultwarden</BucketName><Resource>/rsa_key.pem</Resource><RequestId>18567AC52E4FC471</RequestId><HostId>37b62f02de360c6949659e1d2fb72852efb5d74e5dcbc7d4e665920a1c72a29e</HostId></Error> ``` Can that storage class configuration be made user-configurable or even optional, please?
MrUnknownDE added the enhancementlow priorityenhancementenhancementenhancement labels 2026-04-05 21:17:47 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/vaultwarden#445