0002-00000061

问题描述

签名格式无效。

问题原因

请求头中提供的签名格式不正确。

问题示例

您发起了在Header携带签名的请求,但是Authorization字段的值格式不正确。

GET /test.txt HTTP/1.0
Date: Tue, 20 Dec 2022 08:48:18 GMT
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Authorization: OSSxxx qn6q**************:77Dv****************

Authorization通常以OSS开头,用于标识签名类型。如果需要使用Amazon S3兼容的方式发起请求,则Authorization需以AWS开头。

解决方案

Authorization字段的计算方法如下:

Authorization = "OSS " + AccessKeyId + ":" + Signature
Signature = base64(hmac-sha1(AccessKeySecret,
            VERB + "\n"
            + Content-MD5 + "\n" 
            + Content-Type + "\n" 
            + Date + "\n" 
            + CanonicalizedOSSHeaders
            + CanonicalizedResource))

关于Authorization字段计算方法的更多信息,请参见在Header中包含签名

说明

推荐采用SDK的方式发起请求,可以免去手动签名的过程。更多信息,请参见使用阿里云SDK发起请求概述或者使用Amazon S3 SDK访问OSS