iOS

iOSでの開発に必要なアセット

More than 1 year has passed since last update.

色々と手順はよく見かけるのですが、各手順やファイルの意味が分からなかったので
自分なりに調べてまとめてみました。間違いあればコメントにてご指摘下さい。

  • 秘密鍵(Private Key)と公開鍵のセット(Public Key)
    • チーム開発時は開発用、配布用で分けるとよい。個人でも分けておくと後で楽。
    • それぞれ、以下のキーチェーンからのCSR作成時に自動で出来上がりキーチェーンアクセスに記録される。
    • 別の開発マシンで使う際やSaaSでPush通知する際などには、下記.cerから.p12ファイルとして書き出して、何らかのセキュアな方法(オススメはUSBとかなの?)で別マシンに移す。
  • 証明書要求(Certificate Request or Certificate Signing Request)(いわゆるCSR)
    • キーチェーンアクセスから作成する。
    • デフォルト名はCertificateSigningRequest.certSigningRequest
    • 開発時の個人用はdev-CertificateSigningRequest.certSigningRequestとして保存しておく
    • リリース時のプロダクト用はdist-CertificateSigningRequest.certSigningRequestとして保存しておく
    • 上記のCSRをportalにてアップロードして、開発者用はios_development.cerをダウンロードしておく
    • 上記のCSRをportalにてアップロードして、開発者用はios_distribution.cerをダウンロードしておく
  • 開発用証明書(Development Certificate)(Public Key)
    • ios_development.cer
    • デバイスにインストールする際に必要
  • 配布用証明書(Distribution Certificate)(Public Key)
    • アップルへ申請する際に必要
    • ios_distribution.cer
  • apple id
    • いつもの個人アカウントとは別に作っておくことを推奨
  • デバイスID(Device identifier)
    • 開発用にインストール可能なデバイスとして登録する
    • TestFrightなどで配布する際に必要
  • プロビジョニング プロファイル(Provisioning Profile)

iOSでの開発に必要なデジタルアセット
(iOS開発ガイドより)

配布用の証明書管理

これは、例えばあるチームで誰か管理する人を立てて、その人がやるべきなのではないかと考えている。
つまり、不用意に配布用の秘密鍵は全開発者に渡す必要ないのでは?