証明書

Appleが発行する署名証明書のリクエスト、ダウンロード、使用には、Apple Developer Programのメンバーシップが必要です。また、組織のチームに属するデベロッパの場合、AppをApp Storeに提出するために使用する配布用証明書をリクエストするため、アカウント所有者またはAdmin(管理者)であることが求められます。

証明書の使用

iOSおよびmacOS用のデジタル証明書をリクエストしてインストールする場合、ほとんどのケースでXcodeの使用が推奨されます。ただし、Apple Push Notification Service、Apple Wallet、モバイルデバイス管理(MDM)、Safari Extensionのための証明書は、Apple Developer Webサイトのアカウントの「Certificates, Identifiers & Profiles(証明書、ID、プロファイル)(英語)」からリクエストし、ダウンロードする必要があります。

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

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

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

  • そのため、Apple IDや認証資格情報は安全に保管し、誰とも共有しないでください。詳しくは、「セキュリティとApple ID」をご確認ください。
  • 所属組織以外の人にApple証明書を共有しないでください。所属組織内の信頼できるチームメンバーに証明書を安全に共有する方法について詳しくは、Xcodeヘルプの「署名用アセットを管理する(英語)」をご確認ください。

証明書の期限切れや失効

  • 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アプリケーション証明書(Macアプリケーション)
    証明書の期限が切れた後もユーザーは、その証明書で署名されたバージョンのMacアプリケーションを、ダウンロード、インストール、実行することができます。ただし、アップデート版や新しいアプリケーションに署名するには、新しい証明書が必要です。証明書が無効にされると、その証明書を使用して署名されたアプリケーションをユーザーがインストールすることはできなくなります。Macアプリケーションが、CloudKitやプッシュ通知などの高度な機能を利用するためにDeveloper IDプロビジョニングプロファイルを使用している場合、インストール済みのバージョンのアプリケーションを実行するには、Developer IDプロビジョニングプロファイルを有効な状態にしておく必要があります。さらに詳しく
  • Developer IDインストーラ証明書(Macアプリケーション)
    証明書の期限が切れるとユーザーは、その証明書で署名されたバージョンのMacアプリケーションのインストーラパッケージを起動できなくなります。過去にインストールされたAppは引き続き実行できますが、新しくインストールされるものについては、有効なDeveloper IDインストーラ証明書を使用してインストーラパッケージに再度署名しない限り、実行できなくなります。証明書が無効にされると、その証明書を使用して署名されたアプリケーションをユーザーがインストールすることはできなくなります。
  • Apple Worldwide Developer Relations Certification中間証明書
    Apple Worldwide Developer Relations Certificate Authorityでは、サードパーティAppやSafari Extensionへの署名、Apple WalletやApple Push Notification Serviceの利用のためにデベロッパが使用する証明書を発行しています。この証明書は更新版が発行されており、2016年2月14日以降は、すべての新しいApple Walletパス、Apple Push Notification、Safari Extension、App Storeで公開するAppの署名にこの更新版の証明書を使用する必要があります。さらに詳しく(英語)

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

証明書の不正操作

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

FAQ

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

アプリケーションの署名に使用している証明書の公開鍵または秘密鍵が、お使いのシステムのキーチェーンで見つからないことを意味しています。

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

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

Developer IDで署名したアプリケーションは、Apple Developer Programのメンバーシップの期限が切れるとどうなりますか?

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