티스토리 뷰

아이폰에서 앱을 실행하고, 배포할 권리는 애플만이 갖는다.

인증서

하지만 개발자는 앱을 테스트 하기 위해서 휴대폰에 앱을 설치하고 싶어하는데..! 그런 개발자들을 위해서 애플은 개발자에게 인증서를 발급해준다. 이 인증서를 받기 위해서 ‘키체인 접근’ 에서 CSR(Certificate Signing Request) 을 생성해야 한다. 

 

 

이렇게 ‘인증 기관에서 인증서 요청’ 을 하게 되면, 두가지 일이 일어난다. 

 

  1. 키체인 앱은 자동으로 공개키와 개인키를 생성한다. 이 키는 키체인 앱의 Key 카테고리에서 확인할 수 있다. 

 

이렇게 생성된 키는, 내가 누구인지 애플이 알 수 있는 키라고 한다. 저 키가 없어지면 앱스토어에 배포를 못하게 될 수도 있다고 하는데, 자세하게는 모르겠다.

 

2. 이 키를 이용해서 애플에 보낼 CSR 파일을 생성한다. 이 CSR파일은 나의 이름, 이메일, 공개키를 포험하고 있고 개인키를 이용해서 sign 된다. 이 공개키, 개인키 매커니즘으로 보안 처리를 한다고 한다. 

 

 

생성된 CSR 파일을 애플 사이트에 업로드 하면, 사이트에서 인증서를 발급해주고 그 인증서는 앱 사이닝 시 사용된다. 

 

 

provisioning profile

provisioning profile은 앱을 디바이스에서 사용하게 해준다. 

프로비저닝 프로파일을 만든다는 건 앞에서 만든 인증서와, 실 기기를 연결하는 것이다.

 

*.mobileprovision 파일은 앱을 컴파일 할 때 사용되며, 테스트 하려는 디바이스에 설치된다고 한다. 

여기 보면, Xcode가 자동으로 provisioning profile을 설치한 것을 알 수 있다. 

 

 

개발자는 여러개의 프로비저닝 프로파일을 가질 수 있다.

하지만 프로비저닝 프로파일을 생성할 때 연동된 App ID와 실제 컴파일 하는 App ID가 일치해야 하므로 각 프로젝트마다 각각의 프로비저닝 프로파일이 생길 것이다. 

 

 

(공개키 / 개인키) + 인증서 + provisioning profile이 합쳐져서 앱을 배포할 수 있게 된다. 

 

배포 시

애플 앱을 배포하는 방법은 크게 3가지가 있다. 

 

  • 1. 애드 훅
  • 2. Enterprise
  • 3. App Store

1. 애드훅 배포 시

1) app의 provisioning profile이 apple에서 서명된 것인지 확인

2) CodeResources 파일의 해쉬 정보를 실제 파일들과 대조해서, 빌드 후 수정 안된거 맞는지 확인

 

2. Enterprise 배포 시

따로 확인 절차 없음

 

3. App Store 배포 시

개발자가 제출 하는 빌드는 제출용도로만 쓰이고, 애플이 다시 signing 해서 앱스토어에 업로드 한다. 

 

 

 

 

 

 

[참고 링크]

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함