将临时安全凭证用于 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 支持的更多信息,请参阅《IAM 用户指南》中的授予对 Amazon 资源的临时访问权限

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

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

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

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

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

    以下示例说明如何使用临时安全凭证对 Amazon SQS 请求进行身份验证。AUTHPARAMS 的结构取决于 API 请求的签名。有关更多信息,请参阅 Amazon 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