iPhoneアプリでプッシュ通知するには、
対象のアプリのプッシュ通知証明書を毎年更新する必要がある。
Appleから取得できる証明書は「.cer」だが、サーバーで使うのは「.pem」なので、変換が必要になる。
やりかたを毎回忘れるのでその時に備えたメモ。
事前に済ませておくこと
・鍵ペアを作成する
・証明書の作成に必要な証明書署名要求を作る
・iOS Dev Centerで証明書を作成する
・キーチェーンアクセスに証明書を登録する
以下の手順でやる
・キーチェーンアクセスから証明書と秘密鍵の書き出しを行う
『証明書』からプッシュ通知用の証明書を右クリックして書き出す
証明書をPKCS12形式からPEM形式に変換する
cat apns-dev.crt.p12 | openssl pkcs12 -passin pass: -clcerts -nokeys > apns-dev.crt.pem
秘密鍵をPKCS12形式からパスワード付きのPEM形式に変換する(空パスワードは指定できない)
cat apns-dev.key.p12 | openssl pkcs12 -passin pass: -passout pass:PASS -nocerts > apns-dev-with-password.key.pem
秘密鍵からパスワードを除去する
cat apns-dev-with-password.key.pem | openssl rsa -passin pass:PASS > apns-dev.key.pem
証明書と秘密鍵を合成する
cat apns-dev.crt.pem apns-dev.key.pem > apns-dev.crt+key.pem
2015.9.6
NECO