アカウントヘルプ
アカウント 証明書 証明書の概要
証明書の概要
アプリの開発プロセスでは、さまざまな状況での使用のために、異なる証明書タイプの証明書を作成することになります。iOS、tvOS、watchOSアプリには同じ証明書のセットを使用できますが、macOSアプリには別のセットを用意する必要があります。Xcode 11以降を使用している場合は、すべてのプラットフォームで統一された開発用および配布用証明書を作成することができます。デバイスでアプリを実行したり、テスト用にアプリの機能を利用したりするには、開発用証明書を使用します。アプリを配信したり、App Store Connectにアップロードしたりするには、配布用証明書を使用します。
開発用証明書は個人が所有します。開発用証明書は合計でiOS用に2つ、Mac用に2つ作成できます。デベロッパアカウントでは、開発用証明書の名前にコンピュータ名が追加されるため、それぞれの証明書を判別することができます(例:コンピュータ名が「Work Mac」の場合、「Gita Kumar (Work Mac)」という証明書名)。
配布用証明書はチームが所有し、作成できるのは1つのチームにつき1種類の配布用証明書のみです(Developer ID証明書を除く)。配布用証明書を作成できるのは、Account HolderまたはAdminの役割のみです(個人として登録しているデベロッパには、Account Holderの役割が割り当てられています)。
証明書の作成と無効化は、Xcodeまたはデベロッパアカウントを使用して実行できます。
アカウントと証明書の保護
Apple Account、認証情報、関連するアカウント情報および資料(App Storeへの配信や提出のために使用するApple証明書など)は、ユーザーの身元を特定する機微情報資産です。
- そのため、Apple Accountや認証情報は安全に保管し、誰とも共有しないでください。詳しくは、「セキュリティとApple Account」をご確認ください。
- 所属組織以外の人にApple証明書を共有しないでください。所属組織内の信頼できるチームメンバーに証明書を安全に共有する方法について、詳しくはXcodeヘルプの「Maintain Signing Assets(署名用アセットを管理する)」をご確認ください。
証明書タイプ
証明書タイプは、デベロッパアカウントとXcodeでの証明書の識別を容易にします。
|
タイプ |
目的 |
||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
|
Apple Development |
Xcode 11以降で使用。 開発中に、デバイス上でiOS、macOS、tvOS、watchOSアプリを実行し、特定のアプリサービスを利用する。 |
||||||||||
|
Apple Distribution |
Xcode 11以降で使用。 テスト用として指定したデバイスにiOS、macOS、tvOS、watchOSアプリを配信する、またはApp Storeに提出する。 |
||||||||||
|
APNs Auth Key |
通知リクエスト用の証明書の代わりとして、サーバサイドのトークンを生成する。 |
||||||||||
|
Apple Push Services |
通知サービスとAPNsの接続を確立して、アプリにリモート通知を配信する。 |
||||||||||
|
iOS Development |
開発中に、デバイス上でiOS、tvOS、watchOSアプリを実行し、特定のアプリサービスを利用する。 |
||||||||||
|
iOS Distribution |
テスト用として指定したデバイスにiOS、tvOS、watchOSアプリを配信する、またはApp Storeに提出する。 |
||||||||||
|
Mac Development |
開発中およびテストの実施中に、Macアプリ用の特定のアプリサービスを有効にする。 |
||||||||||
|
Mac App Distribution |
Mac App Storeに提出する前に、Macアプリに署名する。 |
||||||||||
|
Mac Installer Distribution |
署名済みのアプリを格納するMacインストーラパッケージに署名し、Mac App Storeに提出する。 |
||||||||||
|
Developer ID Application |
Mac App Store以外の場所で配信するMacアプリに、配信前に署名する。 |
||||||||||
|
Developer ID Installer |
署名済みのアプリを含むMacインストーラパッケージに署名し、Mac App Store以外の場所で配信する。 |
||||||||||
|
Apple Pay |
Appleからマーチャント/デベロッパに送信されたアプリのトランザクションデータを復号する。 |
||||||||||
|
Merchant Identity |
Apple Payのサーバへの認証に使用する。 |
||||||||||
|
Pass Type ID |
アップデートに署名をし、ウォレットのパスに送信する。 |
||||||||||
|
Swiftの署名 |
Swift Package Managerバージョン5.9以降で使用すする。 配信用にSwiftパッケージとパッケージのコレクションに署名する。 |
||||||||||
|
VoIP Services |
デベロッパの通知サーバとAPNsの接続を確立して、バックグラウンドVoIPアプリに対し、入ってくるアクティビティのアラートを送る。 |
||||||||||
|
WatchKit Services |
デベロッパの通知サーバとAPNsの接続を確立して、ClockKitのコンプリケーションデータをアップデートする。 |
||||||||||
|
Website Push ID |
Webサイト向けのアップデートに署名をし送信する。 |
||||||||||
|
MDMベンダーCSR署名 |
MDMソリューションの証明書署名リクエスト(CSR)(顧客または独自のもの)に署名して、identity.apple.comでMDMプッシュ証明書を生成します。この証明書はリクエストにより入手することができます。詳細はこちらをご覧ください。 |
||||||||||
|
アプリライセンス配布暗号化および署名 |
アプリライセンス配布(ALD)署名証明書および暗号化証明書によって、対象となるアプリのアプリライセンスリクエストを生成できます。 |
||||||||||
注:キーチェーン内の署名証明書の名前には、証明書タイプのヒントを示す文字列とチーム名、そしてチームIDを含みます。
証明書の有効期限切れまたは無効化
- アプリライセンス配布(ALD)証明書
証明書の有効期限が切れた場合や無効になった場合、ALD証明書による有効なアプリライセンスリクエストの生成や暗号化ができなくなります。証明書が有効な間にリクエストおよび作成されたアプリライセンスリクエストは、証明書の期限切れや無効化の影響を受けません。 - Apple Push Notification Service証明書
アプリにプッシュ通知を送信できなくなります。 - Apple Payペイメントプロセッシング証明書
アプリおよびWebサイトでApple Payによる決済ができなくなります。 - Apple PayマーチャントID証明書
WebサイトでApple Payによる決済ができなくなります。 - Pass Type ID証明書(ウォレット)
証明書の有効期限が切れた後も、ユーザーのデバイスにすでにインストールされているパスはこれまで通りに正しく機能します。ただし、デベロッパが新しいパスに署名することや、既存のパスに更新情報を送信することはできなくなります。証明書が無効となった場合、パスは正しく機能しなくなります。 - iOS配布用証明書(App Store)
Apple Developer Programのメンバーシップが有効な場合は、App Storeで公開されている既存のアプリに影響が及ぶことはありません。ただし、期限切れまたは無効になっている証明書を使用して署名した新規のアプリやアップデート版は、App Storeに提出できなくなります。 - iOS配布用証明書(社内用、内部用アプリ)
この証明書を使用して署名されたアプリは、今後ユーザーが実行できなくなります。新しいバージョンのアプリは、新しい証明書で署名して配信する必要があります。 - Macアプリ配布用証明書とMacインストーラ配布用証明書(Mac App Store)
Apple Developer Programのメンバーシップが有効な場合は、Mac App Storeで公開されている既存のアプリに影響が及ぶことはありません。ただし、期限切れまたは無効になっている証明書を使用して署名した新規のアプリやアップデート版は、Mac App Storeに提出できなくなります。 - Developer ID Application証明書(Macアプリ)
証明書の期限が切れた後もユーザーは、その証明書で署名されたバージョンのMacアプリを、ダウンロード、インストール、実行することができます。ただし、アップデート版や新規のアプリに署名するには、新しい証明書が必要です。証明書が無効にされると、その証明書を使用して署名されたアプリをユーザーがインストールできなくなります。Macアプリが、CloudKitやプッシュ通知などの高度な機能を利用するためにDeveloper IDプロビジョニングプロファイルを使用している場合、インストール済みのバージョンのアプリを実行するには、Developer IDプロビジョニングプロファイルを有効な状態にしておく必要があります。詳しくはこちらをご確認ください。 - Developer IDインストーラ証明書(Macアプリ)
証明書の期限が切れた後も、パッケージに信頼できるタイムスタンプが含まれている限り、ユーザーはその証明書で署名されたパッケージをインストールできます。過去にインストールされたアプリは引き続き実行できますが、有効なDeveloper IDインストーラ証明書を使用してインストーラパッケージに再度署名しない限り、新規のインストールができなくなります。証明書が無効化されると、その証明書を使用して署名されたアプリをユーザーがインストールできなくなります。 - Apple Worldwide Developer Relations Certification中間証明書
Apple Worldwide Developer Relations Certificate Authorityでは、サードパーティアプリやSafari Extensionへの署名、AppleウォレットやApple Push Notification Serviceの利用のためにデベロッパが使用する証明書を発行しています。2021年1月28日以降、Appleデバイスにインストールされるソフトウェアへの署名、App Storeへのアプリの提出、特定のAppleサービスへの接続に使用するデジタル証明書は、有効期限が2030年2月20日までの新しいApple Worldwide Developer Relations中間証明書を使用して発行されます。詳しくはこちらをご確認ください。
注:Appleは、独自の裁量でいつでもデジタル証明書を無効にできるものとします。詳しくは、デベロッパアカウントのApple Developer Program使用許諾契約をご確認ください。
証明書への不正アクセスが疑われる場合
Pass Type ID証明書、Developer ID証明書、あるいは秘密鍵への不正アクセスが疑われ、証明書の無効化をリクエストしたい場合は、product-security@apple.comまでEメールにてご連絡ください。この場合でも、デベロッパアカウントで追加の証明書をリクエストすることにより、パスの開発と配信を継続することができます。