0002-00000413

问题描述

请求参数中X-Amz-Credential参数结构不正确。

问题原因

您发起了Amazon S3兼容的V4版本请求,但是请求参数中X-Amz-Credential参数结构不正确。

问题示例

您发起了在URL请求参数中携带签名的请求,但是X-Amz-Credential参数中缺少部分字段。

GET /test.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=LTAI********/us-east-1/s3/aws4_request&X-Amz-Date=20221220T084818Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=ab2**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
x-oss-s3-compat: true

X-Amz-Credential格式为<YOUR-AKID>/YYYYMMDD/REGION/SERVICE/aws4_request。以上示例缺少签名日期字段YYYYMMDD

解决方案

确保URL参数完整且填写正确。

GET /test.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=LTAI********/20221220/us-east-1/s3/aws4_request&X-Amz-Date=20221220T084818Z&X-Amz-Expires=86400&X-Amz-SignedHeaders=host&X-Amz-Signature=ab2s**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
x-oss-s3-compat: true

推荐使用Amazon S3 SDK发起请求。更多信息,请参见使用Amazon S3 SDK访问OSS