awslabs / aws-sdk-kotlin

Multiplatform AWS SDK for Kotlin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

S3 Control operation (createMultiRegionAccessPoint) fails with missing `x-amz-content-sha256` header

0marperez opened this issue · comments

Describe the bug

When trying to create a multi-region-access-point using s3 control the operation fails with an exception.

Expected behavior

The operation should succeed without any exceptions

Current behavior

The operation fails with the exception:

Exception in thread "main" aws.sdk.kotlin.services.s3control.model.S3ControlException: Missing required header for this request: x-amz-content-sha256

Steps to Reproduce

Try to create a multi-region-access-point using s3 control with the AWS SDK for Kotlin.
The code snippet used:

fun main(): Unit = runBlocking {
    val s3Control = S3ControlClient {
        region = "us-west-2"
        logMode = LogMode.LogRequestWithBody + LogMode.LogResponse
    }

    s3Control.createMultiRegionAccessPoint(
        CreateMultiRegionAccessPointRequest{
            accountId = "..."
            details {
                name = "mrap-test"
                regions = listOf(
                    Region {
                        bucket = "..."
                        bucketAccountId = "..."
                    },
                    Region {
                        bucket = "..."
                        bucketAccountId = "..."
                    }
                )
            }
        }
    )
}

Possible Solution

Add the missing header

Context

No response

AWS Kotlin SDK version used

1.0.37

Platform (JVM/JS/Native)

JVM

Operating System and version

Mac OS Ventura 13.6.3

⚠️COMMENT VISIBILITY WARNING⚠️

Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.