All Products
Search
Document Center

Object Storage Service:0002-00000074

Last Updated:Jul 21, 2023

Issue description

The Signature field in a signed URL is missing.

Causes

A signed URL is used to send a request, but the Signature field in the URL parameter is missing.

Examples

You initiated a request to include the signature in the URL parameter, but the Signature field is missing.

GET /test.txt?OSSAccessKeyId=nz2p****&Expires=1141889120 HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com

Solutions

Make sure that the URL of a request includes the Signature field and that the Signature field is correctly specified.

GET /test.txt?OSSAccessKeyId=nz2p****&Expires=1141889120&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv**** HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com

The following code provides an example on how to calculate the Signature field:

Signature = urlencode(base64(hmac-sha1(AccessKeySecret,
          VERB + "\n" 
          + CONTENT-MD5 + "\n" 
          + CONTENT-TYPE + "\n" 
          + EXPIRES + "\n" 
          + CanonicalizedOSSHeaders
          + CanonicalizedResource)))

For more information, see Add signatures to URLs.

Note

We recommend that you use Alibaba Cloud SDKs to initiate requests. Alibaba Cloud SDKs automatically generate signatures for the requests without the need to manually calculate a signature. For more information, see Overview.