

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon SNS 메시지의 서명 확인
<a name="sns-verify-signature-of-message"></a>

Amazon SNS는 메시지 서명을 사용하여 HTTP 엔드포인트로 전송된 메시지의 신뢰성을 확인합니다. 메시지 무결성을 보장하고 스푸핑을 방지하려면 Amazon SNS 메시지를 처리하기 전에 서명을 **확인해야 합니다**.

**Amazon SNS 서명은 언제 확인해야 하나요?**

다음 시나리오에서 Amazon SNS 메시지 서명을 확인해야 합니다.
+ Amazon SNS가 HTTP(S) 엔드포인트에 알림 메시지를 보내는 경우.
+ [https://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html](https://docs.aws.amazon.com/sns/latest/api/API_Subscribe.html) 또는 [https://docs.aws.amazon.com/sns/latest/api/API_Unsubscribe.html](https://docs.aws.amazon.com/sns/latest/api/API_Unsubscribe.html) API 직접 호출 후 Amazon SNS가 엔드포인트에 확인 메시지를 보내는 경우.

**Amazon SNS는 다음 두 가지 서명 버전을 지원합니다.**
+ SignatureVersion1 - 메시지의 SHA1 해시를 사용합니다.
+ SignatureVersion2 - 메시지의 SHA256 해시를 사용합니다. 이는 더 강력한 보안을 제공하며 권장되는 옵션입니다.

**SNS 메시지 서명을 올바르게 확인하려면 다음 모범 사례를 따르세요.**
+ 무단 가로채기 공격을 방지하려면 항상 HTTPS를 사용하여 서명 인증서를 검색합니다.
+ Amazon SNS에서 인증서를 발급했는지 확인합니다.
+ 인증서의 신뢰 체인이 유효한지 확인합니다.
+ 인증서는 SNS 서명 URL에서 가져와야 합니다.
+ 검증 없이 메시지에 제공된 인증서를 신뢰하지 마세요.
+ 스푸핑을 방지하기 위해 예상치 못한 `TopicArn`이 포함된 모든 메시지를 거부합니다.
+ Amazon SNS용 AWS SDKs는 내장된 검증 로직을 제공하므로 구현이 잘못될 위험이 줄어듭니다.