0002-00000409

问题描述

请求头AuthorizationCredential字段提供的时间与请求头时间不匹配。

问题原因

您发起了Amazon S3兼容的V4版本请求,但是请求头AuthorizationCredential字段提供的时间与请求头时间不匹配。

问题示例

您发起了在请求头中携带签名的请求,但是请求头AuthorizationCredential部分提供的时间与请求头时间不匹配。

GET /test.txt HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Authorization:AWS4-HMAC-SHA256 Credential=LTAI********/20130524/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date,Signature=1
x-amz-content-sha256: abc***
x-amz-date: 20221220T084818Z
x-oss-s3-compat: true

请求头AuthorizationCredential字段值提供的时间20130524与请求头Date时间20221220T084818Z不匹配。

解决方案

确保Authorization字段完整且Credential部分提供时间与请求头时间一致。正确示例如下:

GET /test.txt HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Authorization:AWS4-HMAC-SHA256 Credential=LTAI********/20221220/us-east-1/s3/aws4_request,SignedHeaders=host;x-amz-content-sha256;x-amz-date,Signature=34****
x-amz-content-sha256: abc****
x-amz-date: 20221220T084818Z
x-oss-s3-compat: true

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