Entrega de mensajes SNS sin procesar en Amazon - Amazon Simple Notification Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Entrega de mensajes SNS sin procesar en Amazon

Para evitar que los puntos de enlace Amazon Data FirehoseSQS, Amazon y HTTP/S procesen el JSON formato de los mensajes, Amazon SNS permite la entrega de mensajes sin procesar:

  • Al habilitar la entrega de mensajes sin procesar para Amazon Data Firehose o los SQS puntos de enlace de Amazon, SNS los metadatos de Amazon se eliminan del mensaje publicado y el mensaje se envía tal cual.

  • Al activar la entrega de mensajes sin procesar para los puntos de enlace HTTP /S, true se añade al mensaje el HTTP encabezado x-amz-sns-rawdelivery con su valor establecido en, lo que indica que el mensaje se ha publicado sin formato. JSON

  • Al habilitar la entrega de mensajes sin procesar para los puntos finales HTTP /S, se entregan el cuerpo del mensaje, la IP del cliente y los encabezados necesarios. Cuando especifica atributos de mensaje, no se enviará.

  • Al habilitar la entrega de mensajes sin procesar para los puntos finales de Firehose, se entrega el cuerpo del mensaje. Cuando especifica atributos de mensaje, no se enviará.

Para habilitar la entrega de mensajes sin procesar mediante un AWS SDK, debes usar la SetSubscriptionAttribute API acción y establecer el valor del RawMessageDelivery atributo en. true

Habilitación de la entrega de mensajes sin procesar mediante la AWS Management Console

  1. Inicia sesión en la SNSconsola de Amazon.

  2. En el panel de navegación, elija Topics (Temas).

  3. En la página Temas, elige un tema suscrito a un punto de conexión Firehose, SQS Amazon HTTP o /S.

  4. En el MyTopic página, en la sección Suscripción, selecciona una suscripción y selecciona Editar.

  5. En la sección Editar EXAMPLE1-23bc-4567-d890-ef12g3hij456En la sección Detalles, selecciona Habilitar la entrega de mensajes sin procesar.

  6. Elija Guardar cambios.

Ejemplos de formato de mensajes

En los siguientes ejemplos, el mismo mensaje se envía dos veces a la misma SQS cola de Amazon. La única diferencia es que la entrega de mensajes sin procesar está desactivada para el primer mensaje y habilitada para el segundo.

  • La entrega de mensajes sin procesar está desactivada

    { "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" }
  • La entrega de mensajes sin procesar está habilitada

    This is a test message.

Atributos de los mensajes y entrega de mensajes sin procesar para SQS las suscripciones de Amazon

Amazon SNS admite la entrega de atributos de mensajes, que le permiten proporcionar elementos de metadatos estructurados, como marcas de tiempo, datos geoespaciales, firmas e identificadores, sobre el mensaje. Para SQS las suscripciones de Amazon con Raw Message Delivery activado, se puede enviar un máximo de 10 atributos de mensaje. Para enviar más de 10 atributos de mensajes, debes deshabilitar la entrega de mensajes sin procesar. Sin embargo, Amazon SNS descarta los mensajes con más de 10 atributos de mensaje dirigidos a SQS suscripciones de Amazon con Raw Message Delivery activado y los trata como errores del lado del cliente.