만약 특정 서비스를 구매했을 때 다양한 채널로 알림을 보내고 싶을 때 직접 통합해 보내는 방법도 있지만 번거로운 방법이다. 이를 대체할 방법으로 Pub/ Sub 방식이 있다.
구매 서비스가 SNS topic으로 메시지를 전송해서 메시지를 게시하도록 만들 수 있다.
만약 해당 topic에 많은 구독자가 존재한다면 각 구독자들은 SNS 주제로부터 메시지를 수신해 자신이 보관할 수 있다.
Amazon SNS
- 아마존 SNS에서 이벤트 생산자가 한 SNS 주제로 메시지를 하나 보낸다.
- 각 구독자들은 topic으로부터 온 모든 메시지를 수신할 수 있다.
- 각 주제마다 천만 명의 구독자를 가질 수 있으며 최대 10만 개의 주제를 가질 수 있다.
- 구독자로 가능한 것은 다음과 같다.
- SQS
- HTTPS/HTTPS
- 람다
- 이메일
- 등등...
SNS publish 방법
- Topic publish(SDK 이용)
- Direct publish(Mobile apps SDK 이용)
- platform application 생성
- platform 엔드포인트 생성
- platform 엔드포인트에 publish
- 구글 GCM, 애플 APNS, 아마존 ADM 등등을 연결할 수 있다.
보안
다른 서비스들의 보안과 유사하다.
- 암호화
- 전송중 암호화
- KMS 이용 미사용(at-rest) 암호화
- 클라이언트 암호화(클라이언트가 직접 암호화/복호화 하는 경우)
- 접근 제어
- SNS API에 대한 접근을 제어하기 위한 IAM 정책
- SNS 접근 정책
- 다른 계정으로부터 SNS 주제로의 접근
- 다른 서비스가 SNS 주제에 쓰기 하는 것에 대한 허용