1. itosho

    Posted

    itosho
Changes in title
+APNs証明書更新手順
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,93 @@
+# APNs証明書更新手順まとめ
+
+毎回「あれ、どうやるんだっけ?」となるので、まとめておく。
+
+## 1.期限確認
+まずは証明書の期限を確認。期限チェックは自動化しておくのがよい。
+コマンドは以下。
+
+```
+$ openssl x509 -noout -dates -in hogehoge.pem
+```
+
+出力結果は以下。
+
+```
+notBefore=Oct 9 00:00:00 2014 GMT
+notAfter=Oct 8 00:00:00 2015 GMT
+```
+notAfterをみる。はい、切れてますね\(^o^)/オワタ
+期限チェックは自動化しておくのがよい(2回目)。
+
+## 2.cerファイル作成(at Apple Developer)
+
+### 2-1.Member Centerへログイン
+https://developer.apple.com/membercenter/index.action
+
+### 2-2.iOS Apps->Certificatesをクリック
+ここまでは楽勝だ。
+
+### 2-3.Certificates->Allから証明書新規作成
+右上の+ボタンをクリックする。 
+
+### 2-4.Apple Push Notification service SSL(Produciton)を選択
+ラジオボタンにチェックして、Continueボタンをクリックする。
+(開発用の場合はSandboxを選択する。)
+
+### 2-5.任意のApp IDを選択
+セレクトボックから設定して、Continueボタンをクリックする。
+
+### 2-5.CSRファイル作成
+作成済の場合は、Continueボタンをクリックする。
+(更新なのでおそらく作成済だと思うが、未作成の場合は作成する。)
+
+### 2-6.CSRファイルをアップロード
+Choose Fileをクリックして、CSRファイルをアップロードすると、
+Generateボタンがクリック出来るようになるので、クリックする。
+
+### 2-7.cerファイルダウンロード
+正常に処理が完了すると、cerファイルが生成されるので、Downloadボタンをクリックする。
+Apple Developerサイト上での作業は以上。
+
+## 3.p12ファイル作成(on your Mac)
+
+### 3-1.キーチェーンアクセスを起動
+2.でダウンロードしたcerファイルをダブルクリックすると、キーチェーンアクセスが起動する。
+
+### 3-2.cerファイルをp12ファイルへ書き出し
+キーチェーンアクセス起動後、任意の証明書(Apple Production IOS Push Services:*Your App ID*と表示される)を右クリックで、"Apple Production IOS Push Services:*Your App ID*を書き出す"を選択する。
+ファイル保存のダイアログが表示されるので、画面下部のフォーマットを"個人情報交換(.p12)にして、パスワードを設定後(任意)、適当なファイル名で保存する。
+
+## 4.pemファイル作成
+
+### 4-1.証明書と鍵をまとめてpemファイルを出力
+
+コマンドは以下。(catでもOK)
+
+```
+$ openssl pkcs12 -in hogehoge.p12 -out hogehoge.pem -nodes -clcerts
+```
+パスワードを入力して、Mac verified OKが表示されればOK。
+
+### 4-2.期限確認
+
+```
+$ openssl x509 -noout -dates -in hogehoge.pem
+```
+
+```
+notBefore=Oct 11 20:00:00 2015 GMT
+notAfter=Oct 10 20:00:00 2016 GMT
+```
+notAfterが来年になりました!
+あとは動作確認して、pemファイルをサーバーにアップロードしてオシマイ。
+
+もう忘れないはず。。
+
+## 参考サイト
+SSL証明書の有効期限を確認するコマンド:
+http://blog.higty.xyz/archives/317
+iOSプッシュ通知について:
+http://qiita.com/Shun0750@github/items/055a6d83c7167557f02b
+[Push通知]APNsの設定(サーバ編):
+http://qiita.com/yukiko-kato-bass/items/fe3a890eb097780cd574