Amazon SQSで一時的なセキュリティ認証情報を使用する - Amazon Simple Queue Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon SQSで一時的なセキュリティ認証情報を使用する

ユーザーが独自のセキュリティ認証情報を使用して作成されるのに加えて、IAM ユーザーに一時的なセキュリティ認証情報を付与し、AWS のサービスおよびリソースへのアクセスを許可することもできます。AWS アカウント を持つユーザーを管理できます。AWS アカウントを持たないシステムのユーザー (フェデレーティッドユーザー) を管理することもできます。さらに、AWSリソースにアクセスするために作成するアプリケーションを「ユーザー」とみなすこともできます。

Amazon SQSに対するリクエストを作成するときに、これらの一時的なセキュリティ認証情報を使用できます。APIライブラリによって、これらの認証情報を使用して必要な署名値が計算されて、リクエストが認証されます。失効した証明書を使用してリクエストを送信した場合、Amazon SQS はリクエストを拒否します。

注記

一時的な認証情報に基づいてポリシーを設定することはできません。

前提条件

  1. 一時的なセキュリティ認証情報を作成するために IAM を使用します:

    • セキュリティトークン

    • アクセスキー ID

    • シークレットアクセスキー

  2. 一時アクセスキー IDとセキュリティトークンで署名対象のリクエスト文字列を準備します。

  3. 独自のシークレットアクセスキーの代わりに一時シークレットアクセスキーを使用して、クエリAPI リクエストに署名します。

注記

署名付きのクエリAPI リクエストを送信するときは、独自のアクセスキー ID の代わりに一時アクセスキー IDを使用して、セキュリティトークンを含めます。IAMによる一時的なセキュリティ認証情報のサポートについては、AWSIAMユーザーガイド リソースへの一時的なアクセス権の付与について参照してください。

一時的なセキュリティ認証情報を使用して Amazon SQSクエリ API アクションを呼び出すには

  1. AWS Identity and Access Management を使って一時セキュリティトークンをリクエストします。詳細については、IAM ユーザーガイド「一時的なセキュリティ認証情報を使用して、IAMユーザーのアクセスを可能にする」 を参照してください。

    IAMにより、セキュリティトークン、アクセスキー ID、シークレットアクセスキーが返信されます。

  2. クエリは、独自のアクセスキー IDの代わりに一時アクセスキー IDを使用し、セキュリティトークンを含めて準備します。独自のシークレットアクセスキーの代わりに一時シークレットアクセスキーを使用してリクエストに署名します。

  3. 一時アクセスキー IDとセキュリティトークンを含む署名付きクエリ文字列を送信します。

    以下の例は、一時的なセキュリティ認証情報を使用してAmazon SQS リクエストを認証する方法を示しています。AUTHPARAMSの構造はAPIリクエストの署名によって異なります。詳細については、「Amazon Web Services 全般リファレンス署名AWSAPI リクエスト」を参照してください。

    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 アクションで 2 つのメッセージを送信する方法を示しています。

    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