iOS 프로젝트 개발 인증 시스템에 대한 이해와 실제

iOS 앱을 개발하다 보면 언젠가는 복잡한 인증 시스템(csr, provisioning profile 등)을 거쳐야 한다. 무작정 따라하기보다 전반적인 흐름에 대한 이해가 필요하다고 판단해서 정리한다.

iOS 프로젝트 개발에 필요한 인증 시스템의 이해

1. 로컬 머신에서 내 정보를 담은 csr(Certificate Signing Request)파일을 생성, 애플에 제출한다.
2. 위에 대한 응답으로 애플에서 "이 개발자가 iOS 디바이스에 앱을 설치하는 것을 인정하겠다"라는 certificate(증명서)을 받는다.
3. 개발하고자 하는 앱에 대한 내용(프로젝트명, 번들ID, enable할 서비스)을 등록한다.
4. 위 2에서 발급받은 certificate을 이용해 특정 디바이스에서 개발자를 신뢰할 수 있게 provisioning profile을 생성한다.

"iOS 기기에 앱을 설치할 수 있게 애플에서 인정한 권한(certificate)""특정 디바이스에서 앱 / 개발자를 신뢰하고 앱 설치를 허용하게 하는 provisioning profile"이 따로 있다는 점을 유의하자.


실제 적용 방법(간략)

1. 키체인에서 인증 요청 파일 생성(csr), https://developer.apple.com/account/ios/certificate/ 에서 Certificate생성(Dev / Product 구분됨)
2. CSR 업로드해 certificate 다운로드 및 실행으로 키체인에 등록
3. 앱 ID 등록(kr.co와 같이 시작하면 안되는듯)
4.  위 2 / 4에서 만든 certificate과 앱 ID를 사용해 provisioning profile을 생성 / 다운로드 / 실행해 설치한다.

애초에 인증 시스템의 이해를 위해 작성한 포스트이기 때문에, 자세한 적용 방법은 설명은 아래의 참조에서 확인하기 바란다.

References
- 인증 시스템의 이해: http://la-stranger.blogspot.kr/2014/04/ios.html
- Certificate / Provisioning Profile에 대해: https://www.quora.com/What-are-the-differences-between-certificates-provisioning-profiles-and-identifiers
- 실제 인증 방법
  - 1. Certificate: http://cyberx.tistory.com/8
  - 2. Registering devices: http://cyberx.tistory.com/29
  - 3. App ID / Provisioning Profile: http://cyberx.tistory.com/36

댓글

이 블로그의 인기 게시물

Unity에서 모델의 폴리곤의 반대편이 랜더링 되지 않는 문제 해결 방법

Use FFMPEG in XCode(for MacOS)