Apple Push Notification Service(APNs)証明書の有効期限が迫っていますか?心配無用です!APNs証明書の更新は非常に簡単なプロセスですので、さっそく始めましょう!
APNs証明書を更新する最初のステップは、証明書署名要求(CSR)を取得することです。Macを使用している場合は、Keychainを使用して新しいCSRを要求できます。Windowsユーザーの場合は、MMCの証明書スナップインを使用してCSRを生成できます。Linuxユーザーはopensslツールを使用できます。このチュートリアルでは、macOS上のKeychain Accessを使用してCSRを作成する方法について説明します。他のプラットフォームのCSRについては別のチュートリアルで説明します。
Keychain Accessを起動し、「証明書認証局から証明書を要求...」メニュー項目(以下のスクリーンショットで示されています)に進みます。
CSRを完了するためのいくつかの情報を求めるウィンドウが開きます。最初の項目はあなたのメールアドレスです。これはあなたのビジネスメールアドレス、Apple Developerアカウントで使用するメールアドレス、または個人的なメールアドレスで構いません。念のため、提供したアドレスでメールを受信できることを確認してください。
次に、証明書の共通名を指定します。デフォルトでは、共通名フィールドにあなたの名前が事前に入力されているのを見ることでしょう。APNsの目的に特化した名前を推奨します。例えば、あなたのアプリ「FooBar」のプッシュ通知を設定している場合、「FooBar APNs」といった名前が適しています。サンドボックス用の証明書を作成している場合は、「Sandbox」という言葉も末尾に追加することをお勧めします。共通名は、p12形式で証明書をエクスポートする際にKeychain Accessで見つける必要のあるプライベートキーの名前とも同じになります(AWS SNSに必要)。特定の名前を提供することで、プライベートキーの検索が容易になるだけでなく、証明書の目的の追跡もしやすくなります。
次のステップに進む準備ができる前に、「リクエストは:」で「ディスクに保存」が選択されていることを確認してください。「続行」をクリックし、後でAppleにアップロードするために使用するCSRを保存します。
CSRが作成されたら、Appleから新しいAPNs証明書をリクエストする準備が整います。Apple Developerアカウントにログインし、証明書に移動します。証明書ページから、新しい証明書を作成するための青いプラス記号をクリックします。
その後、どのタイプの証明書を作成したいかを尋ねられます。
サービスセクションまでスクロールダウンし、Apple Push Notification service SSLのオプションが表示されるまで続けます。
App IDを選択したら、「続行」をクリックしてCSRをアップロードします。
「ファイルを選択」をクリックし、先ほどKeychain Accessを使用して作成したCSRを選択します。「続行」をクリックすると、ダウンロード用のAPNs証明書が準備された新しい画面が表示されます(ちなみに...右上の青いボタンです)。
新しいAPNs証明書をp12形式でエクスポートするには、Keychain Accessで証明書ファイルを開き、その証明書に関連付けられたプライベートキーと共にエクスポートする必要があります。これを行うには、証明書をダウンロードしてKeychain Accessで開きます。次に、Keychain Accessの「キー」セクションに移動します。
CSRで指定した共通名と同じプライベートキーを選択します。プライベートキーの横にある矢印をクリックして展開します。そうすると、ちょうどインポートした正しい有効期限のAPNs証明書が表示されるはずです。APNs証明書を右クリックしてオプションを表示し、「エクスポート」を選択します。
保存パネルで、Personal Information Exchange(.p12)が選択されていることを確認します。証明書に名前を付けてファイルを保存します。オプションとしてパスワードを指定し、ディスクに証明書を保存するよう求められます。パスワードを設定することをお勧めしますが、これはオプションです。組織のセキュリティベストプラクティスに従ってください。
最後にしてボーナスステップは、AWS SNSプッシュ通知プラットフォームでのAPNs証明書を更新することです。この記事を書いている時点で、モバイルプッシュ通知は以下の地域でサポートされています:
参照: https://docs.aws.amazon.com/sns/latest/dg/sns-mobile-push-supported-regions.html
このチュートリアルでは、US East (N. Virginia)でのデモを行いますが、アプリケーションに適切かつ適用可能な地域を選択してください。詳細ページで「編集」を選択。
「詳細」の下にあるAppleの資格情報セクションが表示されます。認証方法として「証明書」を選択し、「ファイルを選択」をクリックして、先ほどの手順でエクスポートしたp12証明書をアップロードします。