Amazon SNS 주제 구독을 삭제할 수 없는 이유가 무엇인가요?

5분 분량
0

Amazon Simple Notification Service(SNS) 주제 구독을 삭제하고 싶습니다. 하지만 콘솔에서 오류 메시지가 표시되거나 구독 삭제 옵션이 비활성화되어 있는 것을 볼 수 있습니다.

간략한 설명

Amazon SNS에서 Amazon SNS 주제 구독을 삭제할 수 없는 세 가지 상황이 있습니다.

  • 주제 구독이 확인 보류 중 상태입니다.
  • 주제 구독이 삭제됨 상태입니다.
  • 주제 구독을 삭제하려는 AWS Identity and Access Management(IAM) 엔터티에는 구독 취소에 필요한 권한이 없습니다.

참고: 3일이 지나면 Amazon SNS는 삭제확인 보류 중 상태인 구독을 계정에서 자동으로 제거합니다.

주제 구독이 확인 보류 중 상태인 경우 Amazon SNS 콘솔에서 삭제 버튼이 비활성화됩니다.

주제 구독이 삭제됨 상태인데 구독을 삭제하려고 하면 Amazon SNS에서 다음과 같은 오류 메시지가 반환됩니다.

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

구독을 삭제하려는 IAM 엔터티에 구독 취소에 필요한 권한이 없는 경우 Amazon SNS가 Permissions Denied 오류를 반환합니다.

해결 방법

Amazon SNS 주제 구독이 “삭제됨” 또는 “확인 보류 중” 상태인지 확인

중요: 주제를 삭제할 때 구독이 삭제됨 또는 확인 보류 중 상태인 경우 계정에서 구독을 수동으로 제거할 수 없습니다. Amazon SNS가 계정에서 구독을 자동으로 제거할 때까지 3일을 기다려야 합니다.
참고: 구독이 3일 내에 자동으로 제거되지 않는 경우 AWS Support에 문의하세요.

Amazon SNS 콘솔을 엽니다.

왼쪽의 탐색 창에서 구독을 선택합니다.

구독 페이지에서 삭제하려는 구독을 찾으세요. 그런 다음 상태 열에서 구독이 삭제됨 또는 확인 보류 중 상태인지 확인합니다.

구독이 삭제됨인지 아니면 확인 보류 중인지에 따라 다음 섹션 중 하나의 단계를 완료하세요. 구독이 삭제됨 또는 확인 보류 중 상태가 아닌 경우 Permissions Denied 오류 문제 해결 섹션의 단계를 완료하세요.

Amazon SNS 주제 구독이 삭제됨 상태인 경우

주제 구독이 계정에서 제거되지 않고 삭제됨 상태인 데에는 두 가지 이유가 있습니다.

주제 메일링 리스트의 구성원이 해당 주제에서 보낸 이메일에서 구독 취소 링크를 선택합니다

다음 조치를 취하세요.

  1. 이메일 받은 편지함에서 다음과 같은 제목이 있는 이메일을 여세요. AWS 알림 - 구독 취소 확인.
  2. 이메일 하단에서 다시 구독 링크를 선택합니다. 다시 구독 링크를 선택하면 이메일 구독이 다시 확인되며 Amazon SNS 콘솔에서 이를 삭제할 수 있습니다.

-또는-

다음 단계를 따라 삭제된 구독을 다시 생성하세요.

  1. 삭제된 이메일 구독을 다시 생성한 다음 확인합니다.
  2. 구독을 생성하고 확인한 후 Amazon SNS 콘솔에서 삭제합니다.
    참고: 이메일 스팸 필터가 메일링 리스트의 이메일 주소를 구독 취소할 수도 있습니다.

해당 주제를 구독하는 다른 계정의 Amazon SQS 대기열이 교차 계정 구독을 삭제합니다

다음 단계를 완료하세요.

  1. 다른 AWS 계정에서 Amazon SQS 대기열에 대한 ‘삭제된’ Amazon SNS 토픽 구독을 다시 만들려면 어떻게 해야 하나요?의 지침을 따르세요.
  2. 해당 구독을 소유한 AWS 계정을 사용하여 구독을 삭제합니다.

Amazon SNS 주제 구독이 확인 보류 중 상태인 경우

주제 구독이 계정에서 제거되지 않고 확인 보류 중 상태에 있는 데에는 네 가지 이유가 있습니다.

  • 구독이 추가되었지만 아직 확인되지 않았습니다.
  • 구독에 추가된 이메일 주소가 유효하지 않습니다.
  • 이메일 메시지 전송 속도가 기본 할당량인 초당 메시지 10개를 초과합니다.
  • HTTP 또는 HTTPS 엔드포인트는 Amazon SNS의 구독 확인 요청을 자동으로 처리하지 않습니다.
  • HTTP 또는 HTTPS 엔드포인트가 유효하지 않습니다.

다음 엔드포인트 유형 중 하나라도 SNS 주제를 구독하면 구독은 확인될 때까지 확인 보류 중 상태로 유지됩니다.

  • 이메일
  • HTTP
  • HTTPS
  • 교차 계정 Amazon SQS

이전 유형의 엔드포인트와 연결된 구독을 확인하려면 엔드포인트로 전송된 구독 확인 링크를 선택합니다. 구독이 확인되면 Amazon SNS 콘솔에서 이를 삭제할 수 있습니다.

다른 모든 시나리오의 경우 엔드포인트를 해당 SNS 주제에 다시 구독한 후 다음 단계를 완료하여 삭제해야 합니다.

  1. Amazon SNS 콘솔을 엽니다.
  2. 왼쪽의 탐색 창에서 구독을 선택합니다.
  3. 구독 페이지에서 삭제하려는 구독을 찾으세요. 그다음 확인 요청을 선택합니다. 확인 요청이 지정된 엔드포인트로 전송됩니다.
  4. 사용 중인 엔드포인트 유형에 따라 다음 조치 중 하나를 수행하여 구독을 확인합니다.
  5. 이메일 엔드포인트의 경우

이메일 받은 편지함에서 다음과 같은 제목이 있는 이메일을 여세요. AWS 알림 - 구독 확인. 그런 다음 구독 확인을 선택합니다.
참고: 구독 확인 이메일이 보이지 않으면 이메일의 스팸 및 정크 폴더를 확인하세요.

교차 계정 Amazon SQS 엔드포인트의 경우

Amazon SQS 대기열에서 구독 확인 메시지를 찾으세요. 그런 다음 메시지 본문에 있는 SubscribeURL에 HTTP GET 요청을 보냅니다. 자세한 내용을 보려면 ](https://docs.aws.amazon.com/sns/latest/dg/sns-send-message-to-sqs-cross-account.html)다른 계정의 Amazon SQS 대기열에 Amazon SNS 메시지 전송[을 참조하세요.

HTTP 및 HTTPS 엔드포인트의 경우

Amazon SNS가 구독 확인 및 알림 메시지를 보내는 데 사용하는 HTTP POST 요청을 엔드포인트에서 처리할 수 있는지 확인하세요. 자세한 내용을 보려면 엔드포인트가 Amazon SNS 메시지를 처리할 준비가 되었는지 확인을 참조하세요.

구독이 확인됨 상태인 경우 구독을 삭제하세요.

참고: 이메일, HTTP 및 HTTPS 엔드포인트의 경우 구독을 삭제한 후 계정에서 구독이 제거되기까지 3일이 경과해야 합니다.

Permissions Denied 오류 문제를 해결하려면

구독 취소 권한 확인

다음 단계를 완료하여 주제 구독을 삭제하려는 IAM 엔터티에 구독 취소에 필요한 권한이 있는지 확인하세요.

  1. IAM 정책 시뮬레이터 콘솔을 엽니다.
  2. 왼쪽 사용자, 그룹 및 역할 창에서 주제 구독을 삭제하는 데 사용하는 IAM 엔터티를 선택합니다.
  3. 정책 시뮬레이터 창의 서비스 선택 드롭다운 목록에서 SNS를 선택합니다.
  4. 작업 선택 드롭다운 목록에서 구독 취소를 선택합니다.
  5. 시뮬레이션 실행을 선택합니다.
  6. 작업 설정 및 결과권한 열에서 구독 취소 권한이 허용됨인지 아니면 거부됨인지 확인합니다.

IAM 엔터티가 sns:Unsubscribe 작업을 허용하지 않는 경우 시스템 관리자에게 문의하여 필요한 권한을 추가해 달라고 요청하세요. 자세한 내용을 보려면 IAM ID 권한 추가 및 제거를 참고하세요.

AWS 공식
AWS 공식업데이트됨 4달 전