[iOS] Push 인증서 갱신.

kuu
4 min readApr 7, 2017

갑자기 인증서가 오늘 끝난다는 메일에 화들짝 놀라 인증서 갱신을 했다.

문제는 이게 일년에 한 번씩 하다보니 자꾸 이래도 되나, 저래도 되나? 이게 맞나, 저게 맞나 하면서 헷갈리는 문제 때문에 여기저기 묻고 검색하다가

갱신을 완료하고 이렇게 나중에(1년뒤)를 위해 포스팅하기로 했다.

일단 내가 가장 궁금해하던 사항에 대해 결론부터 내리면,

  1. 인증서 갱신을 해도 앱스토어 업데이트는 필요가 없다.
    - 그저 certficate 등록 후 서버에 교체만으로 갱신이 완료된다.
  2. 인증서를 미리 대비하여 하나 더 등록해 둘 수 있다.
    - 오늘 만료라 revoke 시키지 않고 하나 더 등록해두었다.(어차피 다음날 자동 리보크가 될테니까)

그럼 갱신 방법.

일단 Apple developer 사이트에 가기 전 먼저 해야할 작업은
키체인에서 인증 기관에 요청해야하는 것이다.

그럼 저장할 디렉토리 선택 화면 후
키 쌍화면에 대한 정보가 나오는데 따로 손 볼 것 없이 계속을 눌러주면
인증이 완료된다.

저장할 디렉토리를 선택해야 이 창이 나온다.
정상적으로 완료된 모습.

선택한 디렉토리를 가보면 “CertificateSigningRequest.certSigningRequest” 이라는 파일이 생성되어 있는데, 이제 이걸 들고 Apple Developer 사이트에 접속한다.

Certificates, Identifiers & Profiles > Identifiers > App IDs 로 들어와서
인증서를 갱신할 앱을 선택하고 edit를 누른다.

인증서 등록을 위해 Create Certificate 버튼을 눌러준다.

그럼 CSR 파일 생성에 관련된 설명이 나오는데 이미 위에 작업을 해놨기 때문에 continue를 해준다.

이렇게 등록이 안되면 잘 못 만들어 진 것이니 다시 처음부터 키체인 인증부터 해야한다.

그럼 Upload CSR file. 이라고 써있고 Choose file… 버튼이 있는데,
버튼을 눌러 아까 생성한 CertificateSigningRequest.certSigningRequest을 등록해주고 continue를 하면

cert 파일을 다운받을 수 있는 완료 페이지가 나온다.

저 파일을 또 잘 받아둬야한다.

aps.cer(상용버전) 파일 혹은 aps_development.cer(개발버전) 파일이 생성되었을 것이다.

이걸 더블클릭하면

선택한 파일이 방금 추가한 인증파일

키체인에 등록이 된다.

화살표를 열어 인증서를 연 후,
두 가지(인증서와 키체인)을 선택하여 내보내기를 해야한다.

이렇게 보내기를 하면 “인증서.p12” 라는 파일이 생성된다.

일단 나는 여기까지 하면 우리 회사 서버에서 cert 파일과 p12 파일을 전달해주면 등록해주기 때문에 난 이후 등록 절차에 대해선 신경쓰지 않았다.

이 후 절차에 대해 필요할 일이 생기면 따로 추가하기로 하고
이렇게해서 서버 등록을 진행하면 푸시 인증서 갱신이 완료 된 것이다.

가장 초반에도 언급했듯이

create certficate 하여 등록하고 서버에 인증파일을 등록했다면 앱 업데이트는 하지 않아도 된다:-)

이전 AWS 푸시 등록할 때 했었던 것 같다는 생각이 지금 들었는데

일단 이 글의 목적은
사용하고 있던 푸시 인증서가 리보크 되거나, 리보크 되기 직전 새로 생성하여 갱신 시켜도

앱 업데이트는 불필요하다는 글을 쓰는게 목적이다:-)

현재 무사히 서버에 등록되었고, 다행스럽게 푸시가 정상적으로 동작함을 확인했다.

휴.

--

--