0002-00000224

Updated at:

Problem

The value of the x-oss-credential field in the request is invalid.

Cause

You sent a request that uses a v4 signature, but the value of the x-oss-credential field in the request parameters is invalid.

Example

You included v4 signature information in the request URL, but the value of the x-oss-credential field in the request parameters is invalid.

GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=AK**ID/2022-12-20/cn-hangzhou/oss/abc&x-oss-expires=1141889120&x-oss-additional-headers=host&x-oss-signature=8u**a3 HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 20 Dec 2022 08:48:18 GMT

The x-oss-credential field is a required request parameter. It specifies the signature information in the following format: <AccessKeyId>/<SignDate>/<Region>/oss/aliyun_v4_request. In the preceding example, the value of x-oss-credential ends with /abc. The /abc part is invalid.

Solution

Replace /abc at the end of the value of the x-oss-credential field with /aliyun_v4_request. The following code provides a correct example:

GET /oss.jpg?x-oss-signature-verion=OSS4-HMAC-SHA256&x-oss-credential=LTAI****************/20221220/cn-hangzhou/oss/aliyun_v4_request&x-oss-expires=1141889120&x-oss-additional-headers=host&x-oss-signature=8u**a3 HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Date: Tue, 20 Dec 2022 08:48:18 GMT

References

  • For information about how to use Alibaba Cloud SDKs to initiate a request that uses the V4 signature, see Overview.

  • Calculate the signature:

    If the server returns a response that contains the StringToSign parameter, you must check whether the value of the StringToSign parameter on the server is the same as the string before calculation.