将临时安全凭证用于 Amazon SQS - Amazon Simple Queue Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

将临时安全凭证用于 Amazon SQS

除了使用自己的安全证书创建用户外,IAM 还允许您向任何用户授予临时安全证书,从而允许该用户访问您的 Amazon 服务和资源。您可以管理拥有 Amazon Web Services 账户的用户。您还可以管理系统中没有的用户 Amazon Web Services 账户 (联合用户)。此外,您为访问 Amazon 资源而创建的应用程序也可以被视为 “用户”。

您可以使用上述临时安全凭证对 Amazon SQS 发出请求。API 库会使用这些凭证计算必要的签名值,以便对您的请求进行身份验证。如果您使用过期的凭证发送请求,则 Amazon S3 会拒绝请求。

注意

您不能基于临时凭证设置策略。

先决条件

  1. 使用 IAM 创建临时安全凭证:

    • 安全令牌

    • 访问密钥 ID

    • 秘密访问密钥

  2. 使用临时访问密钥 ID 和安全令牌准备待签字符串。

  3. 使用临时秘密访问密钥(而不是您自己的秘密访问密钥)对您的查询 API 请求签名。

注意

在提交已签名的查询 API 请求时,请使用临时访问密钥 ID(而不是您自己的访问密钥 ID),并且包含安全令牌。有关 IAM 对临时安全证书的支持的更多信息,请参阅 I AM 用户指南中的授予对 Amazon 资源的临时访问权限

使用临时安全凭证调用 Amazon SQS 查询 API 操作

  1. 使用申请临时安全令牌 Amazon Identity and Access Management。有关更多信息,请参阅《IAM 用户指南》中的创建临时安全凭证以便为 IAM 用户启用访问权限

    IAM 会返回一个安全令牌、一个访问密钥 ID 和一个秘密访问密钥。

  2. 使用临时访问密钥 ID(而不是您自己的访问密钥 ID)准备查询,并且包含安全令牌。使用临时秘密访问密钥(而不是您自己的秘密访问密钥)对请求签名。

  3. 提交已使用临时访问密钥 ID 和安全令牌签名的查询字符串。

    以下示例说明如何使用临时安全凭证对 Amazon SQS 请求进行身份验证。AUTHPARAMS 的结构取决于 API 请求的签名。有关更多信息,请参阅亚马逊 Web Services 一般参考》中的 “签署 Amazon API 请求”。

    https://sqs.us-east-2.amazonaws.com/ ?Action=CreateQueue &DefaultVisibilityTimeout=40 &QueueName=MyQueue &Attribute.1.Name=VisibilityTimeout &Attribute.1.Value=40 &Expires=2020-12-18T22%3A52%3A43PST &SecurityToken=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY &AWSAccessKeyId=AKIAIOSFODNN7EXAMPLE &Version=2012-11-05 &AUTHPARAMS

    以下示例使用了临时安全凭证来通过 SendMessageBatch 操作发送两条消息。

    https://sqs.us-east-2.amazonaws.com/ ?Action=SendMessageBatch &SendMessageBatchRequestEntry.1.Id=test_msg_001 &SendMessageBatchRequestEntry.1.MessageBody=test%20message%20body%201 &SendMessageBatchRequestEntry.2.Id=test_msg_002 &SendMessageBatchRequestEntry.2.MessageBody=test%20message%20body%202 &SendMessageBatchRequestEntry.2.DelaySeconds=60 &Expires=2020-12-18T22%3A52%3A43PST &SecurityToken=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY &AWSAccessKeyId=AKIAI44QH8DHBEXAMPLE &Version=2012-11-05 &AUTHPARAMS