Como recrio uma assinatura de tópico do Amazon SNS “excluída” para uma fila do Amazon SQS em outra conta da AWS?

3 minuto de leitura
0

Quero recriar uma assinatura de tópico do Amazon SNS “excluída” para uma fila do Amazon SQS em outra conta da AWS.

Se você chamar a API de cancelamento de inscrição do Amazon SNS de uma conta que não possui a assinatura, a assinatura entrará no status Excluída por 72 horas. Enquanto a assinatura do tópico do SNS estiver no status Excluída, a conta que possui a assinatura não poderá assinar novamente o mesmo endpoint no tópico.

Após 72 horas, o Amazon SNS limpa a assinatura Excluída e a conta proprietária da assinatura pode assinar novamente o mesmo endpoint no tópico.

Se você não quiser esperar 72 horas para se inscrever novamente, você pode recriar manualmente a assinatura fazendo qualquer uma das ações a seguir.

Observação: é uma prática recomendada executar chamadas de API de Inscrição e Cancelamento de Inscrição na mesma conta da AWS. Quando você chama a API de Inscrição, a conta da AWS que você usa para fazer a chamada se torna a proprietária da assinatura.

Resolução

Importante: os procedimentos a seguir se aplicam aos assinantes de endpoints HTTP e HTTPS. Ela não se aplica aos assinantes da função do AWS Lambda.

Envie uma solicitação do método HTTP GET para o SubscribeURL na mensagem UnsubscribeConfirmation que você recebeu

  1. Na mensagem UnsubscribeConfirmation enviada para a fila do SQS após a exclusão da assinatura, localize o SubscribeURL. Em seguida, copie e cole o URL em um documento de texto.

  2. Envie uma solicitação do método HTTP GET para o SubscribeURL.

    Exemplo de solicitação do método HTTP GET

    curl -X GET "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:123456789012:MyTopic&Token=<token>"

Chame a API de Inscrição do Amazon SNS a partir da conta da AWS que possui o tópico do SNS e confirme a assinatura

  1. Chame a API de Inscrição do Amazon SNS a partir da conta da AWS que possui o tópico do SNS.
  2. Peça a um usuário da AWS com permissão para ler mensagens da fila do SQS que confirme a assinatura.

Crie um novo tópico do Amazon SNS para substituir o tópico atual e, em seguida, assine o novo tópico

  1. Crie um novo tópico do SNS para substituir o tópico atual.
  2. Faça a assinatura da fila do SQS no novo tópico.

Informações relacionadas

Exclusão de assinatura e tópico do Amazon SNS

Envio de mensagens do Amazon SNS para uma fila do Amazon SQS em uma conta diferente

Fanout para as filas do Amazon SQS

AWS OFICIAL
AWS OFICIALAtualizada há 8 meses