S的推送證書,有有效期限制,一般為一年。當我們證書過期的時候,就需要重新生成證書了。有一段時間沒有上蘋果網站了,昨天上去一看,此奧,改版了,下邊我們將重新生成一個正式環境的push推送的證書。
1。先打開鑰匙串(應用程序-實用工具-鑰匙串訪問),請求一個證書
常用名稱寫為:2013.04.27_push_production_***。並保存到磁盤上。
2。進入打開蘋果網站的證書標簽頁面,選擇 Identifiers標簽下邊的App IDs子標簽,顯示下邊圖片。紅色圈中的是我要重新生成push簽名的證書。點擊此證書。
3。證書詳情標簽,羅列出了所有的功能狀態,最后的Push Notifications顯示可以配置,並不是Enabled可以狀態,所以點擊Setting功能重新上傳證書。
4。證書設置頁面中,最下邊的Push Notifications 如下圖所示。
其中:Development SSL Certificate是測試環境證書,Production SSL Certificate為正式環境證書,我們生成正式環境的證書,點擊后面的Create Certificate。
5。Create Certificate頁面如下。點擊下邊的continue。
6。選擇上傳的證書,我們第一步已經生成了一個證書,上傳此證書。
7。上傳成功后,將會顯示下邊的圖片。有可能在生成證書的過程中會有loading框一直在轉轉轉,這時候重新進入此頁面即可。其實此時證書已經生成了。
此時,push證書已經生成,上邊會標注過期時間,push的證書有效期為一年。點擊Download下載此證書。
8。雙擊剛才下載的證書,會自動把此證書加入到鑰匙串的簽名中,如下圖標示,紅色圈中的,既是我剛才添加的證書,展開此證書
先右鍵點擊 Apple Production IOS PushServices:com.***.***,先導出一個.p12文件。命名為cert.p12。在導出的過程中會讓輸入導出密碼,輸入相應的密碼即可。
9。在2012.04.27_push_producation_***上點擊右鍵,導出一個.p12的文件,命名為key.p12,與上邊相同在導出的過程中會讓輸入導出密碼,輸入相應的密碼即可。
10。到此為止,我們已經有了兩個.p12文件,把他們放到同一個文件夾(aaa)下,需要把兩個.p12文件轉換成.pem文件。
a.先打開終端,切換到文件夾aaa下執行
- openssl pkcs12 -clcerts -nokeys -out cert.pem -in cert.p12
在執行的時候,將會讓輸入密碼,輸入剛才設置的密碼即可生成一個cert.pem文件。
b.再執行:
- openssl pkcs12 -nocerts -out key.pem -in key.p12
此時要注意在終端中的提示,第一次輸入的密碼是生成證書時候的密碼,第二次第三次輸入密碼是設置key.pem的新密碼。
c.如果需要對 key不進行加密,執行下邊語句
- openssl rsa -in key.pem -out key.unencrypted.pem
d.然后就可以合並兩個.pem文件,這個ck.pem就是服務端需要的證書了。
- cat cert.pem key.unencrypted.pem > ck.pem
此時,把生成的ck.pem給服務器端的人員即可。