証明書

Appleが発行する署名証明書のリクエスト、ダウンロード、および使用には、Apple Developer Programメンバーシップが必要です。

証明書の使用

デジタル証明書をリクエストしてインストールする場合、ほとんどのケースでXcodeの使用が推奨されます。ただし、Apple Pay、Apple Push Notification Service、Apple Wallet、モバイルデバイス管理などのサービスのための証明書は、デベロッパアカウントCertificates, Identifiers & Profiles(証明書、ID、プロファイル)(英語)」からリクエストし、ダウンロードする必要があります。配布用証明書をリクエストできるのは、Account Holder(アカウントホルダー)およびAdmin(管理者)のみです。

署名証明書の使用方法について詳しくは、「Xcodeヘルプ(英語)」をご確認ください。

アカウントと証明書の保護

Apple ID、認証資格情報、関連するアカウント情報およびマテリアル(App Storeへの配信や提出のために使用するApple証明書など)は、ユーザーを識別できる機密性の高いアセットです。

証明書の有効期限切れまたは無効化

  • Apple Push Notification Service証明書
    Appにプッシュ通知を送信できなくなります。
  • Apple Payペイメントプロセッシング証明書
    AppおよびWebサイトでApple Payによる決済ができなくなります。
  • Apple PayマーチャントID証明書
    WebサイトでApple Payによる決済ができなくなります。
  • Pass Type ID証明書(Wallet)
    証明書の有効期限が切れた後も、ユーザーのデバイスにすでにインストールされているパスはこれまで通りに正しく機能します。ただし、デベロッパが新しいパスに署名することや、既存のパスに更新情報を送信することはできなくなります。証明書が無効となった場合、パスは正しく機能しなくなります。
  • iOS配布用証明書(App Store)
    Apple Developer Programのメンバーシップが有効な場合は、App Storeで公開されている既存のAppに影響が及ぶことはありません。ただし、期限切れまたは無効になっている証明書を使用して署名した新規のAppやアップデート版は、App Storeに提出できなくなります。
  • iOS配布用証明書(社内用、内部用App)
    この証明書を使用して署名されたAppは、今後ユーザーが実行できなくなります。新しいバージョンのAppは、新しい証明書で署名して配信する必要があります。
  • Mac App配布用証明書とMacインストーラ配布用証明書(Mac App Store)
    Apple Developer Programのメンバーシップが有効な場合は、Mac App Storeで公開されている既存のAppに影響が及ぶことはありません。ただし、期限切れまたは無効になっている証明書を使用して署名した新規のAppやアップデート版は、Mac App Storeに提出できなくなります。
  • Developer ID Application証明書(Mac App)
    ユーザーは、証明書の期限が切れた後もその証明書で署名されたバージョンのMac Appを、ダウンロード、インストール、および実行することができます。ただし、アップデート版や新規のAppに署名するには、新しい証明書が必要です。証明書が無効となった場合、その証明書を使用して署名されたAppをユーザーがインストールできなくなります。Mac Appが、CloudKitやプッシュ通知などの高度な機能を利用するためにDeveloper IDプロビジョニングプロファイルを使用している場合、インストール済みのバージョンのAppを実行するには、Developer IDプロビジョニングプロファイルを有効な状態にしておく必要があります。さらに詳しく
  • Developer IDインストーラ証明書(Mac App)
    証明書の期限が切れると、その証明書で署名されたバージョンのMac Appのインストーラパッケージをユーザーが起動できなくなります。過去にインストールされたAppは引き続き実行できますが、新しくインストールされるものについては、有効なDeveloper IDインストーラ証明書を使用してインストーラパッケージに再度署名しない限り、実行できなくなります。証明書が無効となった場合、その証明書を使用して署名されたAppをユーザーがインストールすることはできなくなります。
  • Apple Worldwide Developer Relations Certification中間証明書
    Apple Worldwide Developer Relations Certificate Authorityでは、サードパーティAppやSafari Extensionへの署名、Apple WalletやApple Push Notification Serviceの利用のためにデベロッパが使用する証明書を発行しています。

    現在発行されているApple Worldwide Developer Relations Certification中間証明書の有効期限は、2023年2月7日です。この更新された証明書は、Apple Developer Enterprise Programのために2020年9月2日より後に発行される新しいiOS配布用証明書に署名する際に使用されます。すべてのタイプのプログラムに関して、残りの証明書も今後更新され、このページも随時更新される予定です。さらに詳しく(英語)

注意:Appleは、独自の裁量でいつでもデジタル証明書を無効にすることができます。詳しくは、デベロッパアカウント(英語)Apple Developer Program使用許諾契約をご確認ください。

証明書への不正アクセスが疑われる場合

Pass Type ID証明書、Developer ID証明書、あるいは秘密鍵への不正アクセスが疑われ、証明書の無効化をリクエストしたい場合は、product-security@apple.comまでEメールにてご連絡ください。この場合でも、デベロッパアカウント(英語)で追加の証明書をリクエストすることにより、パスの開発と配信を継続することができます。

「Xcode could not find a valid private-key/certificate pair for this profile in your keychain(このプロファイルに対応する有効な秘密鍵と証明書のペアがキーチェーン内で見つかりませんでした)」というエラーメッセージが表示されました。

このエラーメッセージは、Appの署名に使用している証明書の公開鍵または秘密鍵が、お使いのシステムのキーチェーン内で見つからないことを意味します。

このエラーは多くの場合、コード署名証明書のリクエスト時に使用したものとは異なるシステムで、Appに署名してビルドしようとする場合に発生します。また、証明書の有効期限が切れた場合や無効になったことが原因でこのエラーが発生する場合もあります。このような場合は、Appのプロビジョニングプロファイルに有効なコード署名証明書が含まれていることを確認すると同時に、お使いのシステムのキーチェーンに、その証明書自体、その証明書の生成に使用された秘密鍵、WWDR中間証明書が含まれていることを確認してください。

このエラーを解決する方法について詳しくは、コード署名に関するサポートページをご確認ください。

Apple Developer Programのメンバーシップの期限が切れた場合、Developer IDで署名したAppにどのような影響がでますか?

メンバーシップの期限が切れた場合でも、ユーザーはDeveloper IDで署名されたAppを引き続きダウンロード、インストール、および実行することができます。ただし、Developer ID証明書の期限が切れた場合、アップデート版や新規のAppに署名するための新しいDeveloper ID証明書を取得するには、Apple Developer Programのメンバーであることが必要です。