Fix S3 cache broken on third-party providers by SDK checksum defaults

What does this MR do?

AWS SDK Go v2 service/s3 v1.73.0 changed RequestChecksumCalculation and ResponseChecksumValidation defaults from WhenRequired to WhenSupported. The WhenSupported default for ResponseChecksumValidation causes the SDK to inject "X-Amz-Checksum-Mode: ENABLED" as a signed header into every GetObject request, causing SignatureDoesNotMatch errors on third-party S3-compatible providers that don't recognise this header.

For custom (non-AWS) endpoints, explicitly default both settings to WhenRequired to restore the pre-v1.73 behaviour. The env vars AWS_RESPONSE_CHECKSUM_VALIDATION and AWS_REQUEST_CHECKSUM_CALCULATION can override this when needed.

Why was this MR needed?

Relates to #39402 (closed)

What's the best way to test this MR?

What are the relevant issue numbers?

Edited by Stan Hu

Merge request reports

Loading