yasudacloudの日記

札幌に住むソフトウェアエンジニア

iOS プッシュ通知証明書の更新周りメモ

Appleからプッシュ通知の証明書の期限が迫っているとメールが来ていたので1年後の自分のために作業対応メモ。

プッシュ通知の証明書が切れた場合、

  • Apple Push Notification Service証明書
    Appにプッシュ通知を送信できなくなります。

とあるので速やかに対応します。

メールの内容はこんな感じ。

では以下、やったこと

1. 証明書の更新

まずCertificatesで該当する証明書を探します。

そのまま新規追加しても良いのですが、念の為Identifiersから対象アプリのCapabilitiesを確認。この辺りの設定は結構ごちゃごちゃになりがちで、不可逆的な操作も多いのでApple Developerの操作はいつも慎重になりますね。

上記の値で問題なければCreate Certificateボタンから証明書を新たに作ります。CSRの作成は割愛(キーチェーンから書き出すだけです)。

画面の流れのままCSRファイルをアップロード→cerファイルをダウンロードができると思います。ダウンロードしたcerファイルをダブルクリックするとキーチェーンアクセスに追加されるので期限が1年後の証明書ができているか確認します。

証明書を選択すると下記の気になる文言が出ました。

"Apple Push Services: xxxxxxxxx"証明書は信頼されていません 

これはダブルクリック→信頼→[常に信頼]に変更して閉じると消えました。

AppleDeveloperの操作はこれで完了ですが、当然ながらプッシュ通信を配信しているシステムに新しい証明書を設定しないといけません。

2.  FCMの更新

プッシュ通知はAWS SNSで配信しているのですが、プラットフォームにFCMを使っていたのでFCMに手を入れます。

まず、MacのキーチェーンからP12ファイルを書き出します。

次にFirebaseからプロジェクトを選択します。

console.firebase.google.com

Cloud Messagingのタブの[Apple アプリの構成]セクションから証明書をアップロード.....と思ったらAPNs 証明書ではなくAPNs 認証キーが設定されていました。

APNs 認証キーの場合、期限がないので更新作業は不要になります。メールでAppleから催促されたのでてっきり証明書をアップしないといけないのかと勘違いしました。。

この記事を書きながら作業してたので肩透かしな感じですが、まあこれで1年後はもっとスムーズに終えるはず😇