Amazon SNS トピックのサーバー側の暗号化 (SSE) を有効にする - Amazon Simple Notification Service

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

Amazon SNS トピックのサーバー側の暗号化 (SSE) を有効にする

サーバー側の暗号化 (SSE) では、機密データを暗号化されたトピックに保存できます。SSE は、AWS Key Management Service (AWS KMS) のマネージドキーを使用して、Amazon SNS トピック内のメッセージの内容を保護します。Amazon SNS でのサーバー側の暗号化の詳細については、「保管中の暗号化」を参照してください。AWS KMS キーの作成の詳細については、「AWS Key Management Service デベロッパーガイド」の「キーの作成」を参照してください。

重要

SSE が有効なトピックへのリクエストでは必ず、HTTPS と署名バージョン 4 を使用する必要があります。

AWS Management Console を使用して Amazon SNS トピックのサーバー側の暗号化 (SSE) を有効にする

  1. Amazon SNS コンソールにサインインします。

  2. ナビゲーションパネルで、[トピック] を選択します。

  3. [トピック] ページで、トピックを選択し、[アクション]、[編集] の順に選択します。

  4. [暗号化] セクションを展開し、以下の操作を実行します。

    1. [暗号化の有効化] を選択します。

    2. AWS KMS キーを指定します。詳細については、「重要な用語」を参照してください。

      KMS タイプごとに、[Description] (説明)、[Account] (アカウント)、および [KMS ARN] が表示されます。

      重要

      KMS の所有者ではない場合、または kms:ListAliases および kms:DescribeKey の許可がないアカウントでログインした場合、Amazon SNS コンソールで KMS に関する情報を表示できません。

      これらの許可を付与するように、KMS の所有者へ依頼してください。詳細については、『AWS Key Management Service デベロッパーガイド』の「AWS KMS API アクセス権限: アクションとリソースのリファレンス」を参照してください。

      • デフォルトでは、Amazon SNS 用の AWS マネージド CMK [(Default) alias/aws/sns] ((デフォルト) alias/aws/sns) が選択されています。

        注記

        以下に留意してください。

        • AWS Management Console を初めて使用してトピックに Amazon SNS 用の AWS マネージド KMS を指定する場合は、AWS KMS は、Amazon SNS 用の AWS マネージド KMS を作成します。

        • または、SSE が有効な状態で、トピックで Publish アクションを初めて使用する場合は、AWS KMS は Amazon SNS 用 AWS マネージド KMS を作成します。

      • AWS アカウントからカスタム KMS を使用するには、[KMS キー] フィールドを選択し、リストからカスタム KMS を選択します。

        注記

        カスタム KMS の作成手順については、AWS Key Management Service デベロッパーガイドの「キーの作成」を参照してください。

      • AWS アカウントまたは別の AWS アカウントからカスタム KMS ARN を使用するには、それを [KMS キー] フィールドに入力します。

  5. [Save changes] (変更の保存) をクリックします。

    トピックの SSE が有効になり、[マイトピック] ページが表示されます。

    トピックの暗号化ステータス、AWS アカウントカスタマーマスターキー (CMK)CMK ARN、および説明が [暗号化] タブに表示されます。

サーバー側の暗号化を使用して Amazon SNS トピックをセットアップする

KMS キーを作成するときは、次の KMS キーポリシーを使用します。

{ "Effect": "Allow", "Principal": { "Service": "service.amazonaws.com" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKey" ], "Resource": "*", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:service:region:customer-account-id:resource-type/customer-resource-id" }, "StringEquals": { "kms:EncryptionContext:aws:sns:topicArn": "arn:aws:sns:your_region:customer-account-id:your_sns_topic_name" } } }