签名版本 4 签名流程 - Amazon 一般参考
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

签名版本 4 签名流程

重要

这些区域有:Amazon软件开发工具包Amazon Command Line Interface(Amazon CLI)和其他Amazon工具会使用您在配置工具时指定的访问密钥为您签署 API 请求。当您使用这些工具时,您不必了解如何签署 API 请求。以下文档介绍如何签署 API 请求,但是仅限如果您正在编写自己的代码来发送和签名AmazonAPI 请求。建议使用Amazon开发工具包或其他Amazon工具来发送 API 请求,而不是编写自己的代码。

签名版本 4 (Sigv4) 是将身份验证信息添加到Amazon通过 HTTP 发送的 API 请求。为了安全起见,大多数Amazon必须使用访问密钥签名。访问密钥由访问密钥 ID 和秘密访问密钥构成,通常称为您的安全凭证。有关如何获取您账户的凭证的详细信息,请参阅了解并获取您的Amazon凭证

签名版本 4 的工作原理

  1. 创建规范请求。

  2. 使用规范请求和其他元数据来创建供签署的字符串。

  3. 从您的 Amazon 秘密访问密钥派生签名密钥。然后将该签名密钥与在上一步中创建的字符串结合使用来创建签名。

  4. 将生成的签名添加到 HTTP 请求的标头中或者添加为查询字符串参数。

Amazon 服务收到请求后,将执行您完成的相同步骤来计算请求中发送的签名。之后,Amazon 会将计算得到的签名与您在请求中发送的签名进行比较。如果签名匹配,则处理请求。如果签名不匹配,则拒绝请求。

有关更多信息,请参阅以下资源: