점진적 과부하 개발 블로그

Swift APNs 본문

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 인스턴스이다.
  • 토큰을 탈취하더라도 내용을 알 수 없다.
반응형

'Swift' 카테고리의 다른 글

Swift 스토리보드없이 코드로 UI작업하기  (0) 2022.03.23
Swift SnapKit  (0) 2022.03.20
Swift HIG(Human Interface Guidelines)  (0) 2022.03.11
Swift Local Notification  (0) 2022.03.07
Firebase A/B Test로 팝업 제어  (0) 2022.03.06