

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon SNS 원시 메시지 전송
<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는 원시 메시지 전송을 허용합니다.
+ Amazon SQS 엔드포인트에 대해 원시 메시지 전송을 사용하면 게시된 메시지에서 모든 Amazon SNS 메타데이터가 제거되고 메시지가 있는 그대로 전송됩니다.
+ HTTP/S 엔드포인트에 대해 원시 메시지 전송을 활성화하면 값이 `true`로 설정된 HTTP 헤더 `x-amz-sns-rawdelivery`가 메시지에 추가됩니다. 이는 메시지가 JSON 형식 지정 없이 게시되었음을 나타냅니다.
+ HTTP/S 엔드포인트에 대해 원시 메시지 전송을 활성화하면 메시지 본문, 클라이언트 IP 및 필수 헤더가 전송되지만, 메시지 속성을 지정하면 전송되지 않습니다.
+ Firehose 엔드포인트에 대해 원시 메시지 전송을 사용하면 메시지 본문이 전송됩니다. 메시지 속성을 지정하면 전송되지 않습니다.

 AWS SDK를 사용하여 원시 메시지 전송을 활성화하려면 `SetSubscriptionAttribute` API 작업을 사용하고 `RawMessageDelivery` 속성 값을 로 설정해야 합니다`true`.

## 를 사용하여 원시 메시지 전송 활성화 AWS Management Console
<a name="raw-message-console"></a>

1. [Amazon SNS 콘솔](https://console.aws.amazon.com/sns/home)에 로그인합니다.

1. 탐색 창에서 **주제(Topics)**를 선택합니다.

1. **주제** 페이지에서 Firehose, Amazon SQS, HTTP/S 엔드포인트를 구독하는 주제를 선택합니다.

1. ***내 주제*** 페이지의 **구독** 섹션에서 구독을 선택하고 **편집**을 선택합니다.

1. **Edit *EXAMPLE1-23bc-4567-d890-ef12g3hij456*(예제 1-23bc-4567-d890-ef12g3hij456 편집)** 페이지의 **세부 정보** 섹션에서 **Enable raw message delivery(원시 메시지 전송 활성화)**를 선택합니다.

1. **변경 사항 저장**을 선택합니다.

## 메시지 형식 예제
<a name="raw-message-examples"></a>

다음 예에서는 동일한 메시지가 동일한 Amazon SQS 대기열로 두 번 전송됩니다. 유일한 차이점은 원시 메시지 전송이 첫 번째 메시지에 대해 사용 중지되고 두 번째 메시지에 대해 사용된다는 것입니다.
+ 원시 메시지 전송이 **사용 중지됨**

  ```
  {
    "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"
  }
  ```
+ 원시 메시지 전송이 **사용됨**

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

## Amazon SQS 구독에 대한 메시지 속성 및 원시 메시지 전송
<a name="message-atttributes-raw-message-delivery-sqs"></a>

Amazon SNS는 메시지에 대한 정형화된 메타데이터 항목(예: 타임스탬프, 지형 정보 데이터, 서명, 식별자)을 제공하도록 해주는 메시지 속성의 전송을 지원합니다. Amazon SQS 구독의 경우 **원시 메시지 전송**이 사용 설정되면 최대 10개의 메시지 속성을 보낼 수 있습니다. 10개가 넘는 메시지 속성을 보내려면 원시 메시지 전송을 사용 중지해야 합니다. 원시 메시지 전송이 사용 설정된 Amazon SQS 구독으로 전달되는 메시지 속성이 10개를 초과하는 메시지는 클라이언트 측 오류로 간주되어 삭제됩니다.