Apple証明書関連 - ntuf/Tips GitHub Wiki
ADEPの
プロビジョニングプロファイルは1年間有効
Distribution証明書は3年間有効
ADEPの
Distribution証明書は1年間有効
■■■ 作成方法
■CSRの作成
CSR(開発者証明要求)とは、
キーチェーンアクセスアプリを開き
メニューの[キーチェーンアクセス]- [証明書アシスタント]-「認証局に証明書を要求」で作成する。
・メールアドレス:自分のメールアドレスでよい(必須)
・通称:秘密鍵の名称になるので必ずつける!!「xxxCo., Ltd.」など
入力しないと認識されないことがあった。
・要求の処理:「ディスクに保存」を選択する
・「鍵ペア情報を指定」をチェックしてもいいがデフォルトで良い
「鍵ペア情報を指定」をチェックしていると
鍵のサイズ:2048ビット、アルゴリズムRSAを変更できるがデフォルトでよい。
CertificateSigningRequest.CertificateSigningRequestが作成される。
特に期限がないのでいつのものでもよい。1回作ったらずっと使えるはず。
何度作り直してもいい。
●鍵 csrの中には公開鍵が含まれている。
■開発者グループの開発用p12ファイルを作成する方法
CSRは個人端末ではない特定の共用端末で作成する。
「Certificates,Identifiers & Profiles」の「Certificates」で登録する
→CSRを認証局であるAppleに送付したということ
●鍵 CSRには共通鍵だけが含まれている
「Certificates,Identifiers & Profiles」の「Certificates」で登録後のダウンロードする
.cerファイルがダウンロードできる
開発用であれば「development.cer」か「ios_development.cer」
製品用は「distribution.cer」か「ios_distribution.cer」
→Appleが証明書を発行したと言う意味
●鍵 証明書には公開鍵を含む証明書のみで、必要な秘密鍵が何であるかを示されているだけ
ダウンロードしたファイルをダブルクリックしてキーチェーンアクセスに反映する
追加された証明書を右クリックして「書き出し」てp12ファイルにする
→キーチェーンアクセスへの登録を意味する
●鍵 p12には秘密鍵も含まれている、その為、管理権限者が管理すべきもの
(試しに秘密鍵と証明書を削除してp12を取り込んでみたら両方復活した)
■開発用p12ファイルは社外の開発ベンダーに公開してもいいのか?
→良い。Developer権限をつけてやってもらう。
p12ファイルとともにパスワードも伝える必要がある。
■プッシュ通知のp12を更新する(1年に一度)
※証明書のCSRができていることが前提
「iOS Certificates」の+ボタンをクリック
Apple Push Notification service SSL (Sandbox & Production)を選択
Continueをクリック
更新したいAppleIDを選択
Continueをクリック
個人のCSRをアップロードする
cerをダウンロードする
※p12ファイルが必要な場合は
cerをダブルクリックするとキーチェーンアクセスを開くので、追加された証明書を右クリック「書き出す」でp12で書き出す。
AWS SNSの場合ログインする
「プッシュ通知」を選択する
この画面で証明書の期限を確認しておく。「編集」をクリックする
証明書の「ファイルの選択」で証明書にp12を選択
証明書のパスワードがあるなら入力する
「証明書情報をファイルから読み込む」を選択する
「変更の保存」をクリックする
証明書の有効期限が更新されたことを確認する。
SNSを新しい証明書を適用した状態で動かしてみる。
古い証明書を期限切れにしてしまう。
期限が切れるまでは使えるので、プッシュ通知が届いたかテスト完了するまでは残しておいてよい
■プロビジョニングププロファイルの更新
Profilesを開き、対象のPPを選択する。Editをクリックする
新しいCertificatesを選択する。
Save する。
PPをダウンロードする。
■Distribution証明書の更新方法 期限は1年
特定の共用端末で作成する必要はなさそう。
CSRの「通称」が入っていないと秘密鍵入りの証明書が出来ないので、CSRを改めて作ってもよいかも
Certificate更新はできないけど、アカウントホルダーでログインしてCertificateを作り直す必要がある
(p12ファイルも新しく生成されるので管理しないといけない)
Certificatesで+ボタンをクリック
「Apple Distribution※」を選択してContinueをクリック
※「iOS Distribution」と言うのもあるがはXcode11未満での名称。
ADPであれば
更新しないと新しいアプリやアップデートをAppStoreに公開できなくなるだけ
既存のアプリの動作に影響はない。(古いCertificateをRevokeしても問題ない)
新しいアプリ、アップデートを公開したいタイミングでCertificateを作成すればいい。
ADEPであれば
PPをEditして、作り直したCertificateを選択し直す。それでできたPPが新しくできる。
Distribution証明書は3年有効で、PPは一年有効。
Distribution証明書の有効期限がプロビジョニングプロファイルの有効期限より短い場合、
プロビジョニングプロファイルの有効期限は、Distribution証明書の有効期限までになります。
(対処法は、PP更新時に、後1年以内にDistribution証明書が切れそうだったら一緒に更新する?他のpp影響はあるだろう)
■Apple DistributionとiOS Distributionの違い
「Apple Distribution」という名前はXcode 11以降で使用する場合で、以前は「iOS Distribution」だった。