Swift
Swift APNs
지용빡
2022. 3. 19. 21:57
반응형
APNS(Apple Push Notification Service) 알아보기
APNS(Apple Push Notification Service)란?
- 서버에서 바로 기기로 알림을 보내지 않고 원격 알림을 사용할 때 반드시 거쳐야 하는 핵심
알림 관리
- APNS는 저장 후에 전달 기능을 수행하는 QoS 구성요소가 포함되어있다.
- 알림 전달을 시도하고 알림을 전달받을 대상 장치가 오프라인일 경우 제한된 시간 동안 알림을 저장하고 장치를 다시 사용할 수 있게 온라인 상태로 전환이 되면 전달하게 된다.
- 기기 및 앱 별로 가장 최근에 알림만 저장을 한다 따라서 장치가 오프라인일 경우에 해당 장치를 대상으로 하는 알림 요청을 보내면 이전에 가지고 있던 요청은 삭제되고 방금 받은 알림만 저장을 하고 전달하게 된다.
- 각 앱 서비스 서버에서 보내는 각종 알림을 최신 상태로 하나씩 저장하다가 장치가 너무 오랫동안 오프라인 상태를 유지하면 저장된 모든 알림을 삭제하는 식으로 관리를 한다.
- 단순히 알림을 보내는 걸로 끝이 아니라 각 기기에 상태를 확인하여 상태에 따라서 알림을 저장 후에 보내주고 또 최신의 알림을 관리하는 등에 관리센터 역할을 하는 것이 APNS이기 때문이다.
보안 관리
- Connection Trust : Provider와 APNS 간에 또 APNS와 장치 간에 작동이 된다. 애플과 계약을 맺은 승인된 공급자만 APNS 푸시 알림 전달할 수 있게 해 준다. 두 가지의 확인방법이 있다.
- token-based : 유효한 인증키를 이용해서 확인
- certificated-based : SSL 인증서를 이용해서 확인
- Device token trust : 각 원격알림에서 And to And로 작동 즉 알림이 올바른 시작 제공자와 끝, 장치 이 두 가지 지점 사이에서만 라우팅 되도록 한다.
- 애플이 특정장치에 특정앱에 할당한 고유식별자를 포함하는 NSData 인스턴스이다.
- 토큰을 탈취하더라도 내용을 알 수 없다.
반응형