iOSの配布証明書を更新する適切な方法


303

配布証明書とすべてのプロビジョニングファイルが6月7日に期限切れになります。適切に更新するにはどうすればよいですか?今すぐ取り消して、新しいものをリクエストする必要がありますか?これを行うと、すべてのライブアプリが削除されますか?


7
何らかの理由で、このアカウントを何年も使用しなかった後、この返信に関する通知を受け取りました。死んでいない(まだ)。また、StackOverflowをご利用いただき、ありがとうございました。私がこの質問を書いたのは、14歳(現在は21歳)のときでした。それ以来、私はiOSアプリを作り続けており、間もなくAppleでフルタイムの役割を開始する予定です(覚えている限りの私の夢)。途中で助けてくれたすべての人に再び感謝します!
user1413558

素晴らしい話!ええ年が経ちます!オンラインQAの前にプログラミングがどのように行われたか想像すらできません。歓声
Fattie

@Fattieなぜ警告?Appleのページの小さなUIはさておき、受け入れられた答えはまだ正しい。古いからといって、すべてが自動的に悪くなるわけではありません。
セオ

こんにちは@Theo、私は長い議論(今は削除されました)があったと思うので、私のコメント(私はそれを削除した!)は特定の意味をなさない、指摘してくれてありがとう。この特定のケースでは、SLBarthが説明するように、Ticked 5-yr old answerに誤った情報が含まれていることに注意してください。
Fattie

回答:


357

ライブアプリは削除されません。アプリストアにあるものには何も起こりません。

それらが正式に期限切れになると、影響を受けるのは、コードに署名する(したがって、新しいビルドを作成して更新を提供する)能力だけです。

配布証明書に関しては、有効期限が切れると、Member Centerの「証明書、識別子、プロファイル」セクションから消えます。有効期限が切れる前に更新する場合は、現在の証明書を失効させると、新しい証明書を要求するボタンが表示されます。

プロビジョニングプロファイルについては、有効期限が切れる前に心配せず、そのまま使用してください。有効期限が切れたら更新するだけで十分です。

安心してお使いいただけるのは、ストア内のライブアプリには何も起こりません。


7
おかげで、彼らは今日期限切れになりました。問題なくリニューアルしました。
user1413558 2012年

30
他の人のための単なるfyi。エンタープライズ配布に使用されている証明書を取り消しましたが、証明書を更新するオプションがありませんでした。それはちょうどなくなった。新しい証明書で再構築するまで、アプリはダウンしていました(インストールできません)。
折りたたみレタス

34
社内証明書を取り消さないでください。社内アプリは、その期間内にすべてのアプリを更新できない限り、再起動/ 3日後に機能しません。Appleでは、2つの社内アプリを作成して、互いにオーバーラップできるようにしてから、新しいアプリをアップデートすることができます。取り消さないでください。取り消すことができるのは、既存のアプリを停止しないApp-Store Certだけです。
mskw 2013年

13
厳密に言えば、証明書を更新することはできません。新しい証明書を生成する必要があります
-developer.apple.com/library/ios/#documentation/IDEs/Conceptual/…を

2
:この上のAppleのドキュメントへのリンクを更新しましたdeveloper.apple.com/library/ios/documentation/IDEs/Conceptual/...
QIX

348

証明書の有効期限が切れると、メンバーセンターの[証明書、識別子、プロファイル]セクションから消えます。証明書を更新できる「更新」ボタンはありません。証明書を失効させて、有効期限が切れる前に新しい証明書を生成できます。または、有効期限が切れて消えるのを待ってから、新しい証明書を生成できます。ではAppleのApp配信ガイド

期限切れの証明書の置き換え

開発または配布の証明書の有効期限が切れたら、それを削除し、Xcodeで新しい証明書を要求します。

証明書の有効期限が切れたり、取り消されたりすると、期限切れ/取り消された証明書を使用したプロビジョニングプロファイルはすべて「無効」として反映されます。これらの無効なプロビジョニングプロファイルを使用してアプリを作成および署名することはできません。ご想像のとおり、有効期限が切れる前に証明書を取り消して再生成します。

Q:その場合、私のライブアプリはすべて削除されますか?

すでにApp Storeにあるアプリは引き続き正常に機能します。繰り返しますが、アップルのアプリ配布ガイドで

重要:開発または配布の証明書を再作成しても、ストアに送信したアプリには影響しません。また、アプリを更新する機能にも影響しません。

そう…

Q:適切に更新するにはどうすればよいですか?

上記のように、証明書の更新はありません。以下の手順に従って、影響を受けるプロビジョニングプロファイルとともに、新しい証明書を取り消して再生成します。Xcode 8.3およびXcode 9の手順が更新されました。

ステップ1:有効期限が切れる証明書を取り消す

Member Center > Certificates、Identifiers&Profilesにログインし、有効期限が切れる証明書を選択します。証明書の有効期限をメモし、[取り消し]ボタンをクリックします。

有効期限が切れる証明書を選択し、[失効]ボタンをクリックします

ステップ2:(オプション)失効した証明書をキーチェーンから削除する

オプションで、失効した証明書をシステム内に残したくない場合は、システムから削除できます。残念ながら、Xcode> Preferences> Accounts> [Apple ID]> Manage Certificatesの 'Delete Certificate'機能は常に無効になっているようです。そのため、Keychain Access.app(/ Applications / Utilities / Keychain Access。アプリ)。

オプションで、Keychain Access.appを使用して失効した証明書を削除します

「ログイン」キーチェーンと「証明書」カテゴリでフィルタリングします。手順1で失効させた証明書を見つけます。

失効した証明書に応じて、「Mac」または「iPhone」を検索します。Mac App Store配布証明書は「サードパーティMac開発者」で始まり、iOS App Store配布証明書は「iPhone配布」で始まります。

チーム名、証明書のタイプ(MacまたはiOS)、およびステップ1で書き留めた証明書の有効期限に基づいて、失効した証明書を見つけることができます。

ステップ3:Xcodeを使用して新しい証明書をリクエストする

Xcode> Preferences> Accounts> [Apple ID]> Manage Certificates…で、左下の「+」ボタンをクリックし、取り消したばかりの同じタイプの証明書を選択して、Xcodeに新しい証明書を要求させます。 。

Xcodeで[Xcode]> [設定]> [アカウント]> [Apple ID]> [証明書の管理…]で新しい証明書をリクエストします

手順4:新しい証明書を使用するようにプロビジョニングプロファイルを更新する

その後、Member Center >証明書、識別子、プロファイル>プロビジョニングプロファイル>すべてに戻ります。失効した証明書を使用したプロビジョニングプロファイルはすべて「無効」として反映されます。

取り消された証明書を使用したプロビジョニングプロファイルはすべて「無効」として反映されることに注意してください。

現在「無効」になっているプロファイルをクリックし、「編集」をクリックして、新しく作成した証明書を選択し、「生成」をクリックします。すべてのプロビジョニングプロファイルが新しい証明書で再生成されるまで、これを繰り返します。

新しく作成した証明書を選択し、[生成]をクリックします

手順5:Xcodeを使用して新しいプロビジョニングプロファイルをダウンロードする

ヒント:Xcodeを使用して新しいプロファイルをダウンロードする前に、Macから既存の、場合によっては無効なプロビジョニングプロファイルをすべてクリアすることをお勧めします。あなたはからすべてのプロファイルを削除することでそれを行うことができます~/Library/MobileDevice/Provisioning Profiles

Xcode>設定>アカウント> [Apple ID]に戻り、[すべてのプロファイルをダウンロード]ボタンをクリックして、Xcodeに開発者アカウントからすべてのプロビジョニングプロファイルをダウンロードするよう依頼します。

Xcodeの[すべてのプロファイルをダウンロード]をクリックして、新しく生成されたすべてのプロファイルをダウンロードします。


1
こんにちは、Junjie、ありがとう!Xcode 7でこの問題に直面しています。配布証明書を取り消すと、AdHoc配布プロビジョニングプロファイルでリリースされたアプリはどうなりますか?彼らはまだ生きていますか?ありがとう
Frade

3
Appleによる@Frade:iOS配布証明書(社内の内部使用アプリ)、ユーザーはこの証明書で署名されたアプリを実行できなくなります。新しい証明書で署名されたアプリの新しいバージョンを配布する必要があります。developer.apple.com/support/certificatesを
junjie

私はアドホックについて尋ねていましたが、おそらく同じ状況です。ありがとう
Frade

3
@junjieストアで公開されているアプリにプッシュ通知の資格がある場合はどうなりますか?証明書の有効期限が切れた後もプッシュ通知を送信できますか?
オタビオ2015年

4
@Otávioアプリ配布証明書(この質問で扱っているもの)はAPNS証明書とは別のものです。APNS証明書はアプリバイナリの一部ではありません。アプリのバイナリを更新せずにAPNS証明書を失効/更新できます。APNS証明書が必要なのはプッシュサーバーです。
junjie 2015年

21

2020年1月およびXcode 11.3.1以降-

  • Xcodeを開く
  • Xcodeの設定を開く(Xcode-> PreferencesまたはCmd-、)
  • アカウントをクリックします
  • 左側でデベロッパーIDをクリックします
  • 右下の[証明書の管理... ]をクリックします
  • 左下隅の+(プラス)の右側にある矢印をクリックします
  • メニューからApple Distributionを選択します

Xcodeは自動的にApple配布証明書を作成し、それをキーチェーンアクセスにインストールして、Xcodeの署名情報を更新します

(注:以前のiOS配布証明書および同等のものの代わりに、単一のApple配布証明書が提供されるようになりました。)


好奇心が強い:Appleからメールを受け取ってiOS配布証明書を更新しました。代わりにApple Distribution証明書を作成する必要があるという情報はありません。
ekkescorner

メールにはそれが記載されていません、@ ekkescorner。オンラインのドキュメントにあります。
傾斜

2
証明書を再作成するこの新しいワークフローは簡単すぎるようです;-) thxもう一度
ekkescorner

回答ありがとうございます@leanne。上記の古くて無関係な回答には、SOに有効期限オプションがあるはずです。
RobMac

11

証明書を更新するのは非常に簡単でした。開発者メンバーセンターに移動し、プロビジョニングプロファイルに移動して、証明書のアクティブと非アクティブを確認し、非アクティブ証明書を選択して、[編集]ボタンをクリックしてから、[生成]ボタンをクリックします。これで、証明書がさらに1年間更新されました。ありがとう


@Shanmugasundharam、プロビジョニングプロファイルを作成した後、アプリストアに新しいバージョンをプッシュしますか?
Niraj Paul

これには、少なくとも、私が見つけたものから、xcodeから生成された.csrファイルが依然として必要です。developer.apple.com/accountから、「証明書、ID、プロファイル」->「プロファイル」に移動します。ReleaseProfileとTestingProfileが表示されます。どちらも[有効期限]列に[無効]と表示されます。ReleaseProfileをクリックしてから、「編集」をクリックします。[Certificates]の下に、[Create Certificate]ボタンが付いた[No Certificates available]と表示されます。クリックします。次に、「iOS配布」と「続行」を選択します。それを作成するために、「ファイルを選択」する必要があります。つまり、CSRファイルをアップロードします。これは、xcodeからのみ生成できると想定しています。
Brent212

Linuxで実行するだけでCSRを生成できることがわかりました:**** openssl req -nodes -newkey rsa:2048 -keyout private_key.key -out cer_sign_request.csr ****信じられないほどたくさんの答え「証明書csrを生成する方法」への変更。これには、私の古いMacのほこりを払い、かさばるIDEを起動する必要のない、この単純なソリューションに言及せずにxcodeが必要です。
Brent212

@NirajPaulアプリケーションは、ストアからダウンロードしたユーザーに対して引き続き機能し、ストアからダウンロードした場合でも機能します。これは、プロビジョニングプロファイルを使用してデバイスにアプリケーションを配置したユーザーにのみ影響します(つまり、アプリケーションをビルドし、xCodeからデバイスにインストールしました)。過去、現在、未来のユーザーは何も違うことに気づかないでしょう。 stackoverflow.com/a/7128502/3493877ソースはここから
Shanmugasundharam

0

これは本当に役立つスレッドでした。@ junjieと同じ手順を踏みましたが、奇妙なことが起こったので、以下の手順を実行しました。

  1. 開発者ポータルにアクセスし、期限切れが近づいている証明書を取り消しました。
  2. XCode6.4に行って、アカウント設定で証明書がまだ有効であることを示したので、私は夢中になりました。
  3. 次にXCode7を開いたところ、証明書が作成ではなく「リセット」ボタンで表示され、リセットボタンを押すと、ポータルで拡張証明書が表示されました。これはリセットボタンについてAppleが言っていることです

Xcodeが署名IDの問題を検出した場合、アカウント設定に適切なアクションが表示されます。Xcodeが[作成]ボタンを表示する場合、署名IDはMember CenterまたはMacに存在しません。Xcodeに[リセット]ボタンが表示される場合、署名IDはMacで使用できません。たとえば、秘密鍵が欠落しています。「リセット」ボタンをクリックすると、Xcodeは取り消され、対応する証明書を要求します。

  1. 私はそれを使ってAppstore ipaを作成してみました。テストするだけで問題なく動作したので保存されましたが、何が起こったのかまだわかりません。Macに複数のアカウントが設定されている可能性があります。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.