Por que não consigo excluir minha assinatura de um tópico do Amazon SNS?

7 minuto de leitura
0

Quero excluir minha assinatura de um tópico do Amazon Simple Notification Service (Amazon SNS). Entretanto, recebo uma mensagem de erro ou vejo que a opção de excluir a assinatura está desativada no console.

Breve descrição

Há três situações em que o Amazon SNS não permite que você exclua sua assinatura de tópico do Amazon SNS:

  • Sua assinatura de tópico está no status Confirmação pendente.
  • Sua assinatura de tópico está no status Excluída.
  • A entidade do AWS Identity and Access Management (IAM) que está tentando excluir a assinatura de tópico não tem as permissões necessárias para cancelar a assinatura.

Observação: depois de três dias, o Amazon SNS remove automaticamente da sua conta as assinaturas que estiverem no status Excluída e Confirmação pendente.

Se a assinatura de tópico estiver no status Confirmação pendente, o botão Excluir será desativado no console do Amazon SNS.

Se a assinatura de tópico estiver no status Excluída e você tentar excluir a assinatura, o Amazon SNS retornará a seguinte mensagem de erro:

"Error code: InvalidParameter - Error message: Invalid parameter: SubscriptionArn Reason: An ARN must have at least 6 elements, not 1"

Se a entidade do IAM que está tentando excluir a assinatura não tiver as permissões necessárias para cancelar a assinatura, o Amazon SNS retornará um erro Permissions Denied.

Resolução

Verifique se a assinatura de tópico do Amazon SNS está no status Excluída ou Confirmação pendente

Importante: se as assinaturas estiverem no status Excluída ou Confirmação pendente quando você excluir o tópico, não será possível removê-las manualmente da sua conta. Você deve esperar três dias para que o Amazon SNS remova automaticamente as assinaturas da sua conta.
Observação: se a assinatura não for removida automaticamente em três dias, entre em contato com o AWS Support.

Abra o console do Amazon SNS.

No painel de navegação esquerdo, selecione Assinaturas.

Na página Assinaturas, encontre a assinatura que deseja excluir. Depois, na coluna Status, verifique se a assinatura está no status Excluída ou Confirmação pendente.

Complete as etapas de uma das seções a seguir, dependendo de sua assinatura estar no status Excluída ou Confirmação pendente. Se a assinatura não estiver no status Excluída ou Confirmação pendente, complete as etapas na seção Para solucionar erros Permissions Denied.

A assinatura de tópico do Amazon SNS está no status Excluída

Há dois motivos para uma assinatura de tópico estar no status Excluída sem ser removida da sua conta:

Um membro da lista de correspondência de tópicos selecionou o link de cancelamento de assinatura em um e-mail enviado do tópico

Execute a seguinte ação:

  1. Na sua caixa de entrada de e-mail, abra o e-mail que tem o seguinte assunto: AWS Notification - Unsubscribe Confirmation.
  2. Na parte inferior do e-mail, selecione o link Assinar novamente. Depois de selecionar o link Assinar novamente, a assinatura de e-mail será confirmada novamente e você poderá excluí-la do console do Amazon SNS.

-ou-

Siga as etapas a seguir para recriar a assinatura excluída:

  1. Recrie a assinatura de e-mail excluída e confirme-a.
  2. Depois de criar e confirmar a assinatura, exclua-a no console do Amazon SNS.
    Observação: filtros de spam de e-mail também podem cancelar a assinatura do endereço de e-mail da lista de correspondência.

Uma fila do Amazon SQS em outra conta que está inscrita no tópico exclui a assinatura entre contas

Realize as etapas a seguir:

  1. Siga as instruções de Como recrio uma assinatura de tópico do Amazon SNS "excluída" para uma fila do Amazon SQS em outra conta da AWS?
  2. Para excluir a assinatura, use a conta da AWS que possui a assinatura.

A assinatura de tópico do Amazon SNS está no status Confirmação pendente

Há quatro motivos para uma assinatura de tópico estar no status de Confirmação pendente sem ser removida da sua conta:

  • A assinatura foi adicionada, mas ainda não foi confirmada.
  • O endereço de e-mail adicionado à assinatura não é válido.
  • A taxa de entrega de mensagens de e-mail excede a cota padrão de 10 mensagens por segundo.
  • O endpoint HTTP ou HTTPS não está processando automaticamente a solicitação de Confirmação de assinatura feita pelo Amazon SNS.
  • O endpoint HTTP ou HTTPS não é válido.

Quando algum dos seguintes tipos de endpoint está inscrito em um tópico do SNS, a assinatura permanece no status Confirmação pendente até ser confirmada:

  • E-mail
  • HTTP
  • HTTPS
  • Amazon SQS entre contas

Para confirmar uma assinatura associada aos tipos de endpoints acima, selecione o link Confirmar assinatura que foi enviado ao endpoint. Depois que a assinatura for confirmada, você poderá excluí-la no console do Amazon SNS.

Para todas as outras situações, deve-se renovar a assinatura do endpoint no tópico do SNS e, em seguida, concluir as etapas a seguir para excluí-lo:

  1. Abra o console do Amazon SNS.
  2. No painel de navegação esquerdo, selecione Assinaturas.
  3. Na página Assinaturas, encontre a assinatura que deseja excluir. Em seguida, selecione Solicitar confirmação. Uma solicitação de confirmação é enviada para o endpoint designado.
  4. Com base no tipo de endpoint sendo usado, execute uma das seguintes ações para confirmar a assinatura:
  5. Para endpoints de e-mail

Na sua caixa de entrada de e-mail, abra o e-mail que tem o seguinte assunto: AWS Notification - Subscription Confirmation. Em seguida, selecione Confirmar assinatura.
Observação: se você não encontrar o e-mail de confirmação da assinatura, verifique as pastas de lixeira e spam do seu e-mail.

Para endpoints do Amazon SQS entre contas

Encontre a mensagem de confirmação da assinatura na fila do Amazon SQS. Depois, envie uma solicitação HTTP GET para o SubscribeURL que está no corpo da mensagem. Para mais informações, consulte Sending Amazon SNS messages to an Amazon SQS queue in a different account.

Para endpoints HTTP e HTTPS

Certifique-se de que o endpoint possa lidar com as solicitações HTTP POST que o Amazon SNS usa para enviar mensagens de notificação e confirmação de assinatura. Para mais informações, consulte Make sure your endpoint is ready to process Amazon SNS messages.

Quando a assinatura estiver no status Confirmada, exclua-a.

Observação: para endpoints de e-mail, HTTP e HTTPS, devem decorrer três dias antes que a assinatura seja removida da sua conta após você excluí-la.

Para solucionar erros Permissions Denied

Marque a permissão de cancelamento de assinatura

Conclua as etapas a seguir para confirmar se a entidade do IAM que está tentando excluir a assinatura de tópico tem as permissões necessárias para cancelar a assinatura:

  1. Abra o console do simulador de políticas do IAM.
  2. No painel esquerdo, Usuários, grupos e perfis, selecione a entidade do IAM que você está usando para excluir a assinatura de tópico.
  3. No painel Simulador de políticas, na lista suspensa Selecionar serviço, selecione SNS.
  4. Na lista suspensa Selecionar ações, selecione Cancelar assinatura.
  5. Selecione Executar simulação.
  6. Em Configurações e resultados de ação, na coluna Permissão, verifique se a permissão de cancelamento de assinatura é Permitida ou Negada.

Se sua entidade do IAM não permitir a ação sns:Unsubscribe, entre em contato com o administrador do sistema e peça que ele adicione as permissões necessárias. Para mais informações, consulte Adicionar e remover permissões de identidade do IAM.

AWS OFICIAL
AWS OFICIALAtualizada há 4 meses