Entrega de mensagens SNS brutas da Amazon - Amazon Simple Notification Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Entrega de mensagens SNS brutas da Amazon

Para evitar que os endpoints Amazon Data FirehoseSQS, Amazon e HTTP/S processem a JSON formatação das mensagens, a Amazon SNS permite a entrega de mensagens brutas:

  • Quando você ativa a entrega de mensagens brutas para Amazon Data Firehose ou SQS endpoints da Amazon, todos os SNS metadados da Amazon são retirados da mensagem publicada e a mensagem é enviada como está.

  • Quando você ativa a entrega de mensagens brutas para endpoints HTTP /S, o HTTP cabeçalho x-amz-sns-rawdelivery com seu valor definido como true é adicionado à mensagem, indicando que a mensagem foi publicada sem JSON formatação.

  • Quando você ativa a entrega de mensagens brutas para endpoints HTTP /S, o corpo da mensagem, o IP do cliente e os cabeçalhos necessários são entregues. Quando você especifica atributos de mensagem, ela não é enviada.

  • Quando você ativa a entrega de mensagens brutas para endpoints Firehose, o corpo da mensagem é entregue. Quando você especifica atributos de mensagem, ela não é enviada.

Para habilitar a entrega de mensagens brutas usando um AWS SDK, você deve usar a SetSubscriptionAttribute API ação e definir o valor do RawMessageDelivery atributo comotrue.

Habilitar a entrega de mensagens brutas usando o AWS Management Console

  1. Faça login no SNSconsole da Amazon.

  2. No painel de navegação, escolha Topics (Tópicos).

  3. Na página Tópicos, escolha um tópico inscrito em um endpoint Firehose, SQS Amazon HTTP ou /S.

  4. Sobre o MyTopic página, na seção Assinatura, escolha uma assinatura e escolha Editar.

  5. Na edição EXAMPLE1-23bc-4567-d890-ef12g3hij456página, na seção Detalhes, escolha Habilitar entrega de mensagens brutas.

  6. Escolha Salvar alterações.

Exemplos de formatos de mensagens

Nos exemplos a seguir, a mesma mensagem é enviada para a mesma SQS fila da Amazon duas vezes. A única diferença é que a entrega de mensagens brutas está desabilitada para a primeira mensagem e habilitada para a segunda.

  • Entrega de mensagens brutas desabilitada

    { "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" }
  • Entrega de mensagens brutas habilitada

    This is a test message.

Atributos de mensagem e entrega de mensagens brutas para SQS assinaturas da Amazon

A Amazon SNS oferece suporte à entrega de atributos de mensagem, que permitem que você forneça itens de metadados estruturados, como timestamps, dados geoespaciais, assinaturas e identificadores, sobre a mensagem. Para SQS assinaturas da Amazon com entrega de mensagens brutas habilitada, um máximo de 10 atributos de mensagem podem ser enviados. Para enviar mais de 10 atributos de mensagem, você deve desativar a entrega de mensagens brutas. No entanto, a Amazon SNS descarta mensagens com mais de 10 atributos de mensagem direcionadas às SQS assinaturas da Amazon com a entrega de mensagens brutas ativada, tratando-as como erros do lado do cliente.