署名 ID と証明書を維持する
アプリにコード署名すると、ユーザーは、あなたのアプリが Apple に既知のソースで作成し、それが改ざんされていないことを信頼できます。すべてのアプリは、コード署名され、特定のサービスを使用するため、デバイス上で起動するようにプロビジョニングされ、テスト用に配布され、または iTunes Connect にアップロードされる必要があります。コード署名は、デジタルにあなたのアプリとインストーラパッケージに署名するために暗号化技術を使用しています。あなたはキーチェーンに格納された署名 ID と開院センターに保存された証明書を作成し、アプリに署名しプロビジョンします。これらのアセットは、一意に、あなたやあなたのチームを識別するので、それらを安全に保つことが重要です。この章では、プロジェクトの寿命を通じて署名 ID および証明書を維持するために実行する一般的なタスクについて説明します。
開発し、テストし、アプリを配布するために使用する、証明書の種類について、には、署名証明書を詳しく をご覧下さい。
重要: チームエージェントは、この章のすべてのタスクを実行できます。あなたがチームの管理者やチームのメンバーである場合、あなたが実行できるタスクについては、チームの特権 を参照してください。
署名 ID と証明書について
アプリへのコード署名は、オペレーティング·システムに、アプリに署名した者を特定させ、それに署名してあるので、アプリが変更されていないことを確認できます。署名はアプリバンドルの中の実行コードが少しでも変更されると署名が無効になるため、アプリの実行可能コードは、その署名で保護されています。画像や nib ファイルなどのリソースは署名されないことに注意してください。そのため、これらのファイルへの変更は、署名を無効にしません。
コード署名は、以下のことを確認するために、アプリ ID、プロビジョニングプロファイル、および権限と組み合わせて使用されます。
- 信頼できるチームメンバーによってアプリがビルドされ、署名されました。
- あなた、またはチームによってアプリは署名され、指定された開発デバイス上でのみ実行されました。
- アプリは、指定したテストデバイス上でのみ動作させました。
- アプリは、アプリに追加していないアプリ・サービスを使用していません。
- iTunes Connect にアプリの改訂をアップロードできるのは自分だけです。
- ストア以外 (Mac のみ) で配布することを選択した場合、アプリは変更されたり、他の誰かによって配布はできません。
コード署名はまた、アプリの署名が削除され、信頼できるソースで再署名されることができます。たとえば、iTunes Connect にアップロードする前に、アプリに署名しますが、それを顧客に配布する前に、Apple は、再署名します。また、ストアにアプリのビルドを提出する際に、アプリの完全にテストされた、開発ビルドに再署名し、提出することができます。
Xcode はビルドプロセス中にアプリに署名するために、あなたの署名 ID を使用します。この 署名 ID は、アップルが発行する、公開鍵と秘密鍵のペアで構成されています。公開鍵と秘密鍵のペアは、キーチェーンに保存され、署名を生成するために、暗号機能によって使用されます。あなたの開発者アカウントには証明書が保存されており、公開鍵を含んでいます。中間証明書 も証明書が 認証局 によって発行されていることを確認するために、キーチェーンにあることが要求されます。
アプリを署名するには、署名 ID と中間証明書の両方がキーチェーンにインストールされて持っている必要があります。Xcode をインストールすると、Apple の中間証明書がキーチェーンに追加されます。署名 ID を作成するために Xcode を使ってアプリに署名します。署名 ID はキーチェーンに追加され、対応する証明書は、会員センターのあなたのアカウントに追加されます。
署名 ID は、アプリやインストーラパッケージに署名するために使用されます。開発用証明書 を使用することで署名したアプリがデバイス上で起動することができ、開発プロビジョニングプロファイルでは、チームのメンバーとして、あなたを識別します。配布証明書は、配布プロビジョニングプロファイルにあなたのチームや組織を識別して、ストアにアプリを提出することができます。チームエージェントまたは管理者のみが配布証明書を作成できます。iOS、tvOS、そして watchOS のアプリに、同じ開発·配布証明書を使用する事が出来ます。Mac アプリの場合、異なる開発・配布証明書を使用してください。証明書の種類の完全なリストについては、署名証明書を詳しく を参照してください。
会社の場合、他のチームメンバーは、自分の Mac にインストールされている独自の署名 ID を持っているでしょう。会員センターは、チームの資産のすべてのリポジトリを含みますが、秘密鍵は記憶していません。
秘密鍵は、お使いの Mac 上でローカルに保存されるため、アカウントのパスワードと同じようにそれは保護して下さい。公開鍵と秘密鍵のペアを安全にバックアップしておいてください。秘密鍵を紛失した場合は、コードに署名するためには全く新しい ID を作成する必要があります。さらに悪いことに、他の誰かがあなたの秘密鍵を持っている場合、彼らはあなたになりすますことができます。悪いやり方では、誰かが悪意あるコードを含むアプリを配布しようとするかもしれません。それはアプリが拒否される可能性があるだけでなく、それはまたあなたの開発者の資格情報が Apple によって取り消される可能性があります。秘密鍵は、キーチェーンに飲み保存され、失われた場合に取り戻すことはできません。
別の Mac を使用してアプリにコード署名したい場合は、証明書を作成するのに使った Mac で開発者プロファイルを、他の Mac にエクスポートし、それを他の Mac でインポートします。また、この機能を使用して複数のチームエージェントの間で配布証明書を共有できます。
署名 ID とプロビジョニングプロファイルの表示
証明書とプロファイルを確認またはトラブルシューティングを行うには、Xcode アカウントの環境設定でそれらを表示します。Xcode はアセットを管理しますが、時折、特定の証明書を作成・無効化したり、プロビジョニング·プロファイルをダウンロードする必要があるかもしれません。
アカウントの詳細を表示するには
- [Xcode] > [Preferences(環境設定)] を選択します。
- ウィンドウの上部にある[アカウント(Accounts)] をクリックします。
- 表示したいチームを選択し、[詳細の表示(View Details)] をクリックします。
- [完了(Done)] をクリックします。
表示されるダイアログで、署名 ID とプロビジョニングプロファイルを表示します。[作成(Create)] ボタンが、証明書の隣に表示された場合は、それはまだ作成されていません。 [ダウンロード(Download)] ボタンが、プロビジョニングプロファイルの隣に表示された場合、それはあなたの Mac 上にはありません。
署名 ID を作成
アプリにコード署名する前に、開発用証明書と、後で iTunes Connect にアプリをアップロードするために、配布証明書を作成します。Xcode を使って、必要なすべての種類の証明書と署名 ID を作成することができます。Xcode は作成し、ダウンロードし、および署名 ID をインストールします。
すべてのチームメンバーは、独自の開発用証明書を作成することができます。チームエージェントまたは管理者だけが、配布証明書を作成できます。チームエージェントだけが、開発者 ID 証明書を作成できます。あなたが組織のメンバーシップを持っている場合は、チーム・エージェントがチームメンバーに代わって行うチームの役割とタスクの詳細については、会員センターでチームの管理 をお読みください。
あなたがそれを必要とするとき、Xcode はあなたのために開発用証明書を作成します。たとえば、あなたがチームにプロジェクトを割り当てるか、ID とチーム設定の構成 で説明したように、チームプロビジョニングプロファイルを作成すると、Xcode はあなたの開発証明書を作成し、チームプロビジョニングプロファイルにそれを追加します。このため、通常は Xcode の環境設定ウィンドウを使用して、配布証明書を作成します。
署名 ID を作成するには
- Xcode の[環境設定(Preferences)] ウィンドウで、[アカウント(Accounts)] をクリックします。
- 使用したいチームを選択し、[詳細の表示(View Details)] をクリックします。
- 表示されるダイアログで、作成したい証明書の種類の行の[作成(Create)] ボタンををクリックします。
- [アカウント設定] に戻るには、[完了(Done)] をクリックします。
[作成] ボタンが無効になっている場合は、署名 ID の種類を作成することはできません。証明書の各タイプの説明については、表14-2 を参照してください。
署名 ID が作成されると、[作成(Create)] ボタンは消えます。
これで、開発者プロファイルをエクスポート で説明したように、バックアップを作成するためにあなたの署名 ID のエクスポートができるようになりました。
手順の確認
証明書が正しく、使用するために準備ができていることを確認してください。証明書は、アプリに署名するため、Mac アプリの場合は、インストーラパッケージに署名するために、有効でなければなりません。
初めて、証明書を確認し、Xcode 内でそれらを確認し、それらがそれぞれのツールでどのように表示されるか、どこに位置するか見るために、キーチェーンアクセス、及び会員センターで確認してください。キーチェーンアクセスと会員センターでは、署名 ID と証明書の有効期限を表示します。後で、トラブルシューティングのため、キーチェーンアクセスを使用します。
会員センターを使用し確認
会員センター では、公開鍵を格納するため、Xcode とキーチェーンアクセスと同じ証明書を表示します。
会員センターを使用し署名証明書を確認するには
- 証明書、ID とプロファイル で、[証明書(Certificates)] を選択します。
- [証明書] セクションで、確認したい証明書の種類に応じて、開発やプロダクトを選択します。
証明書の型、および有効期限は、キーチェーンで表示される情報と一致する必要があります。
キーチェーンアクセスを使用し確認
キーチェーンアクセスは、署名 ID ごとに、秘密鍵と公開鍵を表示します。
キーチェーンアクセスで署名 ID を確認するには
- /Applications/Utilities にあるキーチェーンアクセスを起動します。
- 左側のペインで、キーチェーンセクションの「ログイン」を選択し、[カテゴリー(Category)] セクションの[証明書(Certificates)] を選択します。
- 証明書の左側に、開閉用三角ボタンがあることを確認します。
- 証明書が有効であることを確認します。
Xcode を使って開発または配布証明書を作成すると、証明書が自動的にログインキーチェーンにインストールされます。
開発·配布証明書が、キーチェーンアクセスの[証明書] カテゴリに表示されます。開発用証明書の名前は iOS、tvOS、watchOS アプリ開発者の場合は 「iPhone Developer」で始まり、Mac アプリ開発者の場合は、「Mac Developer」で始まり、自分の名前が続きます (開発証明書は、個人に属します)。
証明書の他のタイプも、キーチェーンアクセスの[証明書] カテゴリに表示されます。
証明書の名前の隣にある開閉用三角ボタンをクリックすると、秘密鍵が表示されます。開閉用三角ボタンが表示されない場合は、秘密鍵はなくなりました。(この問題を解決するには コード署名 ID がなくなった場合 をお読みください。)
証明書を選択すると、チェックマークを含む緑色の円が、証明書のリストの上にあるキーチェーンアクセスに表示されます。チェックマークの隣のテキストには、「この証明書が有効です」とあります。
トラブルシューティング
Xcode の証明書とキーチェーンアクセスのものとが会員センター内の証明書と一致しない場合、矛盾を解決する方法については、証明書の問題 をお読みください。
開発者 ID 証明書の追加作成
開発者 ID 証明書は、Mac App Store の外でアプリを配布するために使用されます。他の種類の証明書で開発者 ID 証明書を作る場合は、署名 ID を作成 で説明したように、Xcode を使います。開発者 ID 証明書をもっと欲しい場合は、会員センターを使用して、各タイプの証明書5個まで作成することができます。
開発者 ID 証明書を作成するには
- 証明書、ID とプロファイルで、[証明書(Certificates)] を選択します。
- 証明書の下で、[すべて(All)] を選択します。
- 右上隅にある[追加] ボタン (+) をクリックします。
- プロダクトの下で開発者 ID を選択し、[続行(Continue)] をクリックします。
- 証明書の種類、開発者 ID アプリケーションまたは開発者 ID インストーラを選択し、[続行] をクリックします。
- キーチェーンアクセスを使用して証明書署名要求(CSR)を作成するには指示に従い、[続行] をクリックしてください。
- [ファイルの選択(Choose File)] をクリックします。
- CSR ファイル(.certSigningRequest 拡張子を持つ) を選択し、[選択(Choose)] をクリックします。
- [生成(Generate)]をクリックします。
- [ダウンロード]をクリックします。
証明書ファイルは、ダウンロード(Download) フォルダに表示されます。
キーチェーン内に開発者 ID 証明書をインストールするには、ダウンロードした証明書ファイル(.cer 拡張子を持つ) をダブルクリックします。開発者 ID 証明書は、キーチェーンアクセスの「私の証明書(My Certificates)」のカテゴリに表示されます。
なくなった中間証明権限をインストール
証明書を使用するには、キーチェーンに正しい中間証明書を持っている必要があります。中間証明書は、証明書が、信頼できるソースによって発行されたことを保証します。Xcode をインストールすると、Apple のワールドワイド・デベロッパ・リレーションズ認証権限という名前の中間証明書が、システムのキーチェーンにインストールされます。開発者の ID 証明書の中間証明書は、開発者 ID の認証権限と呼ばれています。誤って中間証明書を削除した場合は、再インストールすることができます。
なくなった中間証明書をインストールするには、Xcode でプロビジョニングプロファイルをダウンロード で説明したようにまず Xcode でプロビジョニングプロファイルをダウンロードしてみてください。それがうまく行かない時は、なくなった中間証明書をダウンロードして、インストールして下さい。
なくなった中間証明書をインストールするには
- http://www.apple.com/certificateauthority に移動します。
- なくなった中間証明書は、Apple の中間証明書の下のリンクをクリックしてください。
- 証明書ファイルをダブルクリックして、システムのキーチェーンにインストールして下さい。
証明書ファイルは、.cer 拡張子を持ち、あなたのダウンロードフォルダに表示されます。
証明書とプロファイルのエクスポートとインポート
Xcode は、証明書とプロファイルを作成した後、すべてのアセットのバックアップを作成するため、それらをエクスポートします。これをするのは、例えば、秘密鍵がなくなった場合、開発のために使用したり、証明書を修復したりするため、別の Mac にアセットを移します。Xcode でプロファイルをダウンロードしても、なくした秘密鍵を置き換えることはありません。その代わりに、バックアップから証明書およびプロファイルをインポートします。
開発者プロファイル と呼ばれるエクスポートファイルは、以下のチームのアセットを含んでいます。
- 開発証明書
- 配布証明書
- プロビジョニングプロファイル
また、他のチームメンバーと共有する、選択した証明書をエクスポートすることができます。この場合、エクスポートファイルは、選択した、そのまさに証明書が含まれています。
開発者プロファイルをエクスポート
開発者プロファイルは、あなたの資格情報を表すので、署名し、ストアにアプリを提出し、Xcode は暗号化してエクスポートしたファイルをパスワードで保護します。
開発者アカウントの資産をエクスポートするには
- [Xcode] > [Preferences(環境設定)]を選択します。
- ウィンドウの上部にある[アカウント(Accounts)] をクリックします。
- 左下隅にある[アクション(Action)] ボタン([削除(Delete)] ボタンの右にある歯車のアイコン) をクリックし、ポップアップメニューから[開発者アカウントをエクスポート(Export Developper Accounts)] を選択してください。
- [名前を付けて保存(Save As)] フィールドにファイル名を入力し、[パスワード]と[確認]フィールドの両方にパスワードを入力してください。
- [保存(Save)] をクリックします。
- 表示されるダイアログで、[OK] をクリックします。
ファイルは暗号化され、パスワードで保護されます。
ファイルは、.developerprofile 拡張子で指定した場所に保存されます。
選択した証明書のエクスポート
プロファイルを除外したいくつかの証明書をエクスポートするには、[詳細]ダイアログで証明書を選択します。
選択した証明書をエクスポートするには
- [Xcode] > [環境設定]を選択します。
- ウィンドウの上部にある[アカウント]をクリックします。
- 表示したいチームを選択し、[詳細の表示(View Details)] をクリックします。
- 署名 ID テーブルでエクスポートしたい証明書を Control - クリックし、ポップアップメニューから[エクスポート(Export)] を選択します。
- [名前を付けて保存(Save As)] フィールドにファイル名を入力し、[パスワード(Password)] と[確認(Verify)] フィールドの両方にパスワードを入力します。
- [保存(Save)] をクリックします。
ファイルは暗号化され、パスワードで保護されています。
ファイルは、.p12 拡張子で指定した場所に保存されます。
他の方法として、セキュリティ(1) コマンドラインユーティリティを使用して証明書をエクスポートできます。
開発者プロファイルをインポート
別のMacに切り替えたいときや、なくなった秘密鍵を復元したりするために、開発者プロファイルをインポートします。
開発者アカウントの資産をインポートするには
- [Xcode] > [環境設定]を選択します。
- ウィンドウの上部にある[アカウント(Accounts)] をクリックします。
- 左下隅にある[アクション] ボタン (歯車のアイコン) をクリックし、ポップアップメニューから[開発者アカウントをインポート(Import Developer Accounts)] を選択してください。
- 開発者プロファイルを含むファイルを検索して選択し、[開く(Open)] をクリックします。
- ファイルを暗号化するために使用されるパスワードを入力し、[OK] をクリックします。
- 表示されるダイアログで、[OK] をクリックします。
ファイルは、.developerprofile 拡張子を持つ必要があります。
キーチェーンから署名 ID を削除
署名 ID が無効なら、キーチェーンから削除し、もはや使用しなくなった(おそらくそれらは、あなたがメンバーだった前のチームに属していた)、または秘密鍵がなくなり、その結果、使用できない場合、秘密鍵がなくなると、署名 ID のバックアップがある場合は、すぐに署名 ID を削除した後に、「開発者プロファイルをインポート」で説明したように、開発者プロファイルをインポートします。いくつかの他の理由で署名 ID を削除するなら証明書を再作成し関連するプロビジョニングプロファイルの更新の全ての手順を踏めば、後でコード署名の問題を回避できます。
警告: 開発者プロファイルのファイルからインポートしない限り、キーチェーンから一度削除すると、秘密鍵は再度作成できません。秘密鍵がなければ、証明書を使用してアプリに署名することはできません。
キーチェーンから署名 ID を削除するには
- (/Applications/Utilities にある) キーチェーンアクセスを起動します。
- カテゴリーのセクションで、[キー(Keys)] を選択します。
- 関連する証明書を明らかにするため、すべての秘密鍵の開閉用三角ボタンをクリックします。
- 削除する証明書に関連する秘密鍵をすべて選択します。
- 各秘密鍵に対応する公開鍵を選択します。
- (キーボード上の)[削除(Delete)] を押し、ダイアログが表示されたら、[削除(Deltete)] をクリックします。
- カテゴリーのセクションで、[証明書(Certificates)] を選択します。
- 削除したいすべての証明書を選択します。
- (キーボード上の)[削除] を押し、ダイアログが表示されたら、[削除] をクリックします。
キーチェーンアクセスで表示される名前で証明書の種類を認識する方法については、表 14-2 を参照してください。
証明書は、秘密鍵を持っていません。
証明書の破棄
証明書を再作成するときや、別のコード署名の問題(発生しうる問題のタイプについては、証明書の問題 を参照してください)のため、それらをもはや必要としない場合、証明書を破棄します。それらが危険にさらされていることが疑われる場合にも、証明書を破棄します。会社のためのチームの管理者であれば、プロジェクトの作業をもはやしないチームメンバーの開発証明書を破棄したいと思うでしょう。証明書の破棄は、プロビジョニングプロファイルを無効にする事なので、それ以降のコード署名の問題を回避するために、証明書を再作成し関連するプロビジョニングプロファイルの更新内のすべてのステップを踏んで下さい。
破棄する特権
表 14-1 に、各チームメンバーが破棄することができる、証明書の種類を示します。個人の開発者は、一人のチームのチームエージェントあり、指示されている場合を除き、開発と配布の証明書のすべてのタイプを破棄するための権限を持っていることを意味します。会社の場合、いずれのチームメンバーでも、自分の開発用証明書を破棄することができますが、彼または彼女が、チームエージェントまたは管理者であれば、チームのメンバーは、配布証明書を破棄することだけができます。
証明書の種類 | チームエージェント | チーム管理者 | チームメンバー |
---|---|---|---|
開発証明書: iOS の開発 Mac の開発 | ✔ | ✔ | ✔ |
他のチームの管理者とメンバーの証明書: iOS の開発 Mac の開発 | ✔ | ✔ | ✘ |
チームエージェントの証明書: iOS の開発 Mac の開発 | ✔ | ✘ | ✘ |
ストア流通証明書: iOS の配布 Mac アプリの配布 Mac インストーラの配布 | ✔ | ✔ | ✘ |
開発者の ID 証明書: 開発者 ID のアプリケーション 開発者 ID のインストーラ | ✘ | ✘ | ✘ |
通知証明書をプッシュする: APNs の開発 iOS APNs の生産 iOS APNs を開発 Mac APNs を生産 Mac | ✔ | ✔ | ✘ |
パス証明書: パスタイプ ID | ✘ | ✘ | ✘ |
会員センターを使用して開発者の ID やパスブックの証明書を破棄することはできません。その代わりに、この種の証明書を破棄するには product-security@apple.com でアップルに要求を送信して下さい。
Apple が開発者 ID 証明書を破棄した場合、ユーザーは、もはや、その証明書で署名されたアプリケーションをインストールすることはできません。開発者 ID 証明書を破棄する代わりに、開発者 ID 証明書の追加要求 で説明したように会員センターを使用して、追加の開発者 ID 証明書を作成することができます。
Xcode を使用して開発証明書のリセット
破棄したい開発用証明書が、Xcode の[アカウント]の環境設定で表示される場合は - それはあなたの Mac 上で作成した証明書で、キーチェーンの中にありますが - Xcode を使って破棄することができます。そうでなければ、会員センターを使用して証明書の破棄で述べたように、会員センターを使って証明書を破棄できます。(Xcode を使用して配布証明書を破棄しようとすると、会員センターにリダイレクトされます。)
Xcode を使用して、開発証明書を破棄するには
- [Xcode] > [環境設定(Preferences)] を選択し、ウィンドウの上部にある[アカウント(Accounts)] をクリックします。
- あなたのチームを選択し、[詳細の表示(View Details)] をクリックします。
- 表示されるダイアログで、破棄して再作成したい署名 ID のアクション列内のリセットボタンをクリックします。
- 表示されるダイアログで、[完了(Done)] をクリックします。
会員センターを使用して証明書の破棄
あなたのチームに所属する、証明書の全ての種類を破棄するには会員センターを使用します。たとえば、不要になったか、再作成する必要のない他のチームメンバーまたは配布証明書のための開発証明書を破棄します。
会員センターを使用して証明書を破棄する
- 証明書、ID とプロファイルで、証明書を選択します。
- 証明書の下で、[すべて]を選択します。
- 破棄したい証明書を選択し、[破棄]をクリックします。
- 表示されるダイアログで、[破棄(Revoke)] をクリックして下さい。
期限切れの証明書の交換
開発または配布証明書の有効期限が切れると、それを削除して Xcode で新しい証明書を要求します。証明書を再作成し関連するプロビジョニングプロファイルの更新で述べたように、証明書を再作成するのに同じ手順に従ってください。キーチェーンアクセスや会員センターを使い、署名 ID と証明書の有効期限を表示するには、会員センター使用で検証やキーチェーンアクセス使用で検証 に記載されているようにして下さい。
証明書を再作成し関連するプロビジョニングプロファイルの更新
これらのアセットは関連しており、お使いの Mac と会員センターの両方に常駐しているため証明書を再作成し、関連するプロビジョニング·プロファイルを更新するのは、簡単な作業ではありません。証明書を破棄すると、証明書を含むすべてのプロビジョニングプロファイルが無効になります。Xcode は自動的にチームのプロビジョニングプロファイルを再生成しますが、プロビジョニングプロファイルの他のタイプは自分自身で管理して下さい。このセクションでは、完全にコード署名の資産を復元するために実行するすべての手順を説明します。
証明書を再作成したり、関連するプロビジョニングプロファイルの更新するいくつかの理由があります。たとえば、次の操作を行います:
- 誤ってキーチェーンから1つ以上の秘密鍵を削除してしまい、復元するバックアップがない場合。
- 破棄した、または有効期限切れの証明書とそれに関連するプロビジョニング·プロファイルを削除したい場合。
- 別のチームに参加する前の、前のチームからのすべての証明書とプロビジョニングプロファイルを削除したい場合。
- 開発のために複数の Mac を使用したり、複数のチームに属している場合は、新しいプロジェクトのために Mac を設定することをお勧めします。
しかしながら、これらの手順を実行する前に、証明書を削除すると、元に戻すことはできませんので、証明書、プロビジョニング、またはビルドについて問題を経験している場合は、最初に証明書の問題 をお読み下さい。
再作成する証明書を選択します。あなたはデバイス上のアプリを実行している問題が発生した場合は、あなただけの再作成、開発証明書に必要な場合があります。再作成、配布証明書は、開発証明書や開発プロビジョニングプロファイルには影響しないことに注意してください。同様に、再作成開発用証明書を使用しているディストリビューション証明書または配布プロビジョニングプロファイルには影響しません。
重要: 開発と配布証明書の再作成は、ストアに提出したアプリに影響せず、またそれを更新するのに影響しません。
証明書を再作成し関連するプロビジョニングプロファイルを更新するには
- 証明書の破棄 で説明したように、会員センターを使用して証明書を破棄します。
- 必要に応じて、キーチェーンから署名 ID を削除 の説明に従って、キーチェーンからこれらの証明書の署名 ID を削除して下さい。
- 必要に応じて、署名 ID を要求 で説明したように、Xcode を使用して、新しい証明書を要求します。
- 会員センターでプロビジョニングプロファイル編集 で説明したように、破棄した証明書を含んでいるプロビジョニングプロファイルの他のタイプを削除するか、再生成します。
- 会員センターでプロビジョニングプロファイルを変更した場合、Xcode でプロビジョニングプロファイル更新 で説明したように、Xcode でプロビジョニングプロファイルを更新します。
- 必要に応じて、デバイスからプロビジョニングプロファイルの削除説明したように、デバイス上の変更されたプロビジョニングプロファイルをインストールします。
- 証明書は、最初の Mac で修復された後は、開発者プロファイルをエクスポート で説明したように、開発者プロファイルをエクスポートします。
破棄した証明書を含む、プロビジョニングプロファイルは無効になります。例えば、開発用証明書を破棄すると、その証明書を含むすべての開発プロビジョニングプロファイルが無効になります。
独自の開発や配布証明書を破棄した場合、キーチェーンから対応する署名 ID を削除して下さい。そうでなければ、証明書の所有者が自分の Mac 上から署名 ID を削除する必要があります。
Xcode でプロビジョニングプロファイル更新 で説明したように、Xcode で新規開発証明書またはプロビジョニングプロファイルの更新を要求して、開発用証明書を破棄した場合、チームのプロビジョニング·プロファイルを再生成します。これらのアクションのいずれかを実行した後は、それらはもはや会員センター内では無効と表示されません。
Xcode は配布プロビジョニングプロファイルや、会員センターを使用して作成するカスタムの開発プロビジョニング·プロファイルを自動的には再生成しません。
複数の Mac を修復している場合は、他の Mac で以下の追加の手順を実行して下さい。
- キーチェーンから署名 ID を削除 で説明したように、キーチェーンから署名 ID を削除します。
- 開発者プロファイルをインポート の説明に従って、元の Mac で作成した開発者プロファイルをインポートします。
署名証明書を詳しく
キーチェーンに保存されているコード署名 ID は、お使いの iOS と Mac プログラムの開発と配布の資格情報を表します。これらはリストに表示されているため、誤ってキーチェーンや会員センターからそれらを削除しないように、それらは、メニューに表示され、証明書の種類のため、これらの証明書の名前に精通している必要があります。
異なる目的のために署名証明書の異なる種類があります。開発証明書は、あなたのチームの人を特定し、デバイス上でアプリを実行するために使用されます。開発およびテスト中に、デバイスで動作するすべての iOS アプリに署名する必要があり、iCloud とゲームセンターのような特定の技術を使用する Mac アプリにも署名しなければなりません。
配布証明書は、チームを特定し、ストアにアプリを提出するか、Mac アプリでは、ストアの外に配布するために使用されます。会社の場合は、配布証明書は、アプリを提出する権限を持っているチームメンバーで共有されます。配布証明書と、配布の具体的な方法に関連する多数の種類があります。異なるコード署名 ID も iOS と Mac アプリに使用されます。
署名証明書は、Apple 社によって発行され、承認されています。Apple が提供する中間証明書は、証明書が使用できるようにシステムのキーチェーンにインストールしておく必要があります。それ以外では、無効です。Apple が提供する、Xcode によってインストールされる中間証明書は、次のとおりです:
- Apple ワールドワイドデベロッパーリレーションズ認証局。開発やストアの証明書を検証するために使用されます。
- 開発者の ID 認証局。Mac App Store の外で配布するための開発者用の ID 証明書を検証するために使用されます。
証明書の型の間のマッピングについては、表 14-2 を参照してください。証明書の名前は、キーチェーンアクセスに表示され、それぞれの目的によって異なります。
会員センターは、チーム名(または個人名)と、各証明書の種類を表示します。Xcode のアカウント環境設定は署名 ID 欄に証明書の種類を表示します。キーチェーンアクセスおよび Xcode でのコード署名 ID のビルド設定ポップアップメニューは、証明書の名前が表示します。
チームメンバーごとに1つの Mac や iOS の開発用証明書があります。そのため、開発用証明書の名前は、個人の名前を含んでいます。証明書の他のすべての型は、チーム (複数のチームメンバーが共有する) が所有し、そのように、チーム名を含んでいます。個人の開発者の場合、1人のチームなので、あなたの名前とチーム名は同じです。
証明書の種類 | 証明書の名前 | 説明 |
---|---|---|
iOS の開発 | iPhone 開発者:チームメンバー名 | デバイス上で iOS アプリを実行して、開発中に、特定の技術やサービスを使用するため |
iOS の配布 | iPhone の配布:チーム名 | テストのために指定されたデバイス上に iOS アプリを配布するために、または App Store にそれを提出するため |
Mac の開発 | Mac 開発者:チームメンバー名 | 開発およびテスト中に、特定の技術やサービスを有効にするため |
Mac アプリの配布 | サードパーティ Mac 開発者アプリ:チーム名 | Mac App Store に提出する前に、Mac アプリの署名に |
Mac インストーラの配布 | サードパーティ Mac 開発者インストーラ:チーム名 | Mac App Store に、署名されたアプリを含む、Mac のインストーラパッケージに署名して提出する場合に |
開発者 ID のアプリ | 開発者 ID アプリ:チーム名 | Mac App Store の外で配布する前に、Mac アプリの署名に |
開発者 ID のインストーラ | 開発者 ID のインストーラ:チーム名 | Mac App Store の外で、署名済みのアプリを含む、Mac のインストーラパッケージに署名して配布するために |
総括
この章では、アプリの寿命全体を通じて、開発と配布の署名 ID を維持する方法を学びました。また、Xcode、キーチェーンアクセス、および会員センター内での証明書の様々なタイプを識別する方法を学びました。
前の章
次の章