

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

# Amazon SNS raw メッセージの配信
<a name="sns-large-payload-raw-message-delivery"></a>

[Firehose 配信ストリームへのファンアウト](sns-firehose-as-subscriber.md)、[Amazon SQS](sns-sqs-as-subscriber.md)、および [HTTP/S](sns-http-https-endpoint-as-subscriber.md) エンドポイントによるメッセージの JSON フォーマット処理を回避するために、Amazon SNS は raw メッセージの配信を許可します。
+ Amazon SQS エンドポイントに対して raw メッセージの配信を有効にすると、発行されたメッセージからすべての Amazon SNS メタデータが削除され、メッセージはそのまま送信されます。
+ HTTP/S エンドポイントに対して raw メッセージの配信を有効にすると、値が `true` に設定された HTTP ヘッダー `x-amz-sns-rawdelivery` がメッセージに追加されます。これは、メッセージが JSON フォーマットなしで発行されたことを示します。
+ HTTP/S エンドポイントに対して raw メッセージの配信を有効にすると、メッセージ本文、クライアント IP、および必要なヘッダーが配信されます。メッセージの属性を指定すると、そのメッセージは送信されません。
+ Firehose エンドポイントの raw メッセージ配信を有効にすると、メッセージ本文が配信されます。メッセージの属性を指定すると、そのメッセージは送信されません。

 AWS SDK を使用して raw メッセージ配信を有効にするには、 `SetSubscriptionAttribute` API アクションを使用し、 `RawMessageDelivery` 属性の値を に設定する必要があります`true`。

## を使用した raw メッセージ配信の有効化 AWS マネジメントコンソール
<a name="raw-message-console"></a>

1. [Amazon SNS コンソール](https://console.aws.amazon.com/sns/home)にサインインします。

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

1. **[トピック]** ページで、Firehose、Amazon SQS、または HTTP/S エンドポイントにサブスクライブするトピックを選択します。

1. [{{**MyTopic**}}] ページの [**サブスクリプション**] セクションでサブスクリプションを選択したら、[**編集**] を選択します。

1. [**Edit {{EXAMPLE1-23bc-4567-d890-ef12g3hij456}}**] ページの [**詳細**] セクションで、[**raw メッセージ配信の有効化**] を選択します。

1. [**変更を保存**] をクリックします。

## メッセージ形式の例
<a name="raw-message-examples"></a>

以下は、同じメッセージが同じ Amazon SQS キューに 2 回送信されている例です。唯一の違いは、最初のメッセージでは raw メッセージ配信が無効になり、2 番目のメッセージでは有効になっていることです。
+ raw メッセージの配信を**無効にします**。

  ```
  {
    "Type": "Notification",
    "MessageId": "dc1e94d9-56c5-5e96-808d-cc7f68faa162",
    "TopicArn": "arn:aws:sns:us-east-2:111122223333:ExampleTopic1",
    "Subject": "TestSubject",
    "Message": "This is a test message.",
    "Timestamp": "2021-02-16T21:41:19.978Z",
    "SignatureVersion": "1",
    "Signature": "FMG5tlZhJNHLHUXvZgtZzlk24FzVa7oX0T4P03neeXw8ZEXZx6z35j2FOTuNYShn2h0bKNC/zLTnMyIxEzmi2X1shOBWsJHkrW2xkR58ABZF+4uWHEE73yDVR4SyYAikP9jstZzDRm+bcVs8+T0yaLiEGLrIIIL4esi1llhIkgErCuy5btPcWXBdio2fpCRD5x9oR6gmE/rd5O7lX1c1uvnv4r1Lkk4pqP2/iUfxFZva1xLSRvgyfm6D9hNklVyPfy+7TalMD0lzmJuOrExtnSIbZew3foxgx8GT+lbZkLd0ZdtdRJlIyPRP44eyq78sU0Eo/LsDr0Iak4ZDpg8dXg==",
    "SigningCertURL": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-010a507c1833636cd94bdb98bd93083a.pem",
    "UnsubscribeURL": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:111122223333:ExampleTopic1:e1039402-24e7-40a3-a0d4-797da162b297"
  }
  ```
+ raw メッセージの配信を**有効にします**。

  ```
  This is a test message.
  ```

## Amazon SQS サブスクリプションのメッセージ属性と raw メッセージ配信
<a name="message-atttributes-raw-message-delivery-sqs"></a>

Amazon SNS では、メッセージに関する構造化メタデータ項目 (タイムスタンプ、地理空間データ、署名、識別子など) を指定できるメッセージ属性の配信をサポートしています。SQS サブスクリプションの場合、**raw メッセージの配信**を有効にすると、最大 10 個のメッセージ属性を送信できます。10 個を超えるメッセージ属性を送信するには、raw メッセージの配信を無効にする必要があります。raw メッセージ配信が有効になっている場合、10 個を超えるメッセージ属性を持つ Amazon SQS サブスクリプション宛てのメッセージは、クライアント側のエラーとして破棄されます。