请求头认证 (HTTP Authorization Header)

客户端可以通过使用 HTTP Authorization Header 请求头指定认证信息。

认证签名 V4

AWS V4 请求头认证信息格式定义如下:

注意: 为了便于阅读示例中添加了换行符和缩进格式,实际请求中无需添加换行符

Authorization: AWS4-HMAC-SHA256 Credential=<Request credential>,
    SignedHeaders=<List of signed headers, separated by semicolon>,
    Signature=<Sign of request>
  • AWS4-HMAC-SHA256 字段前后必须包含一个空格

  • Credential, SignedHeadersSignature 使用英文逗号 , 连接

请求头认证信息字段定义
字段名称 描述
AWS4-HMAC-SHA256 AWS4 声明请求使用 AWS V4 认证签名;HMAC-SHA256 声明认证签名算法为 HMAC-SHA256
Credential 格式定义 <AWSAccessKeyId>/<yyyyMMdd>/<region>/<service>/aws4_request,如 WeyUtAXps-_5dIDvFWF-rKZ5XyzWf-BmOEI_vNtk/20060102/cn-east-1/s3/aws4_request
SignedHeaders 用以生成认证签名的 HTTP 请求头名称列表,请求头名字必须是按字母序排序的小写格式,并且名字前后不能包含空格,多个名字使用英文分号 ; 分割,如 host;x-amz-date
Signature 请求认证签名的 64 位十六进制字串
传统模式 (非 Chunked)

对于较小的对象 (Object),客户端可以选择计算整个上传内容的 HASH 值,然后通过单次 PUT 请求完成上传。详细签名流程请参考 请求认证认证签名 V4 定义。

Chunked 模式

对于较大的对象 (Object),客户端选择计算整个上传内容的 HASH 值是非常困难的。这时可以选择将较大的对象分割成几个较小的块 (chunked),然后分别计算每个块的 HASH 值并上传,最终完成上传。详细上传流程请参考 PUT Chunked 定义。

认证签名 V2

AWS V2 请求头认证信息格式定义如下:

Authorization: AWS <AWSAccessKeyId>:<Signature>
  • AWS 字段前后必须包含一个空格

  • <AWSAccessKeyId><Signature> 使用英文冒号 : 连接

请求头认证信息字段定义
字段名称 描述
AWS 声明请求使用 AWS V2 认证签名;AWS V2 认证签名统一使用 HMAC-SHA1 算法
Signature 请求认证签名的 Base64 编码字串

results matching ""

    No results matching ""