-
iOS 推送通知证书制作
一、生成Certificate Signing Request(CSR)
1.打开钥匙串,钥匙串访问 --》证书助理 --》从证书颁发机构请求证书,如图:
2.填写你的邮箱和常用名称,并选择保存到硬盘,点击继续,然后在本地拿到一个Push.certSigningRequest文件。如图:
二、导出p12文件
选择“密钥” 找到 Push的专用密钥,并导出.p12文件,如图:
2.然后输入密码(这个密码要记住,后面需要用到),保存好。
三、生成.cer证书
1.登录付费开发者账号,选择“Certificates”,点击“+”号添加证书。
2.如果制作开发证书,选择“Apple Push Notification service SSL (Sandbox)”,如图:
发布证书,则选择“Apple Push Notification service SSL (Sandbox & Production)”,如图:
3.点击“continue”,然后选择之前制作好的CSR文件,完成后,下载下来。
四、命令生成.p12
方式一:
点击下载文件(后缀为.cer文件),双击刚下载的.cer文件,会通过钥匙串自动导入;
注意:有效证书左侧存在一个小三角标记,代表证书存在对应秘钥,导出时记得关闭小三角标记。有效推送证书的名称为Apple Push Services或Apple Development IOS Push Services。
Apple Push Services命名是通用环境推送证书.
Apple Development IOS Push Services命名是开发环境推送证书.
在钥匙串的证书中 点击左侧 钥匙串-登录-种类证书,找到刚才导入的证书,右击导出.p12证书,并为其设置密码。
方式二
1.把上面所生成的文件(Push.CSR,Push.p12,aps.cer)放到桌面的一个目录下,方便以下操作。
2.打开终端,输入命令:
cd (把上面步骤的目录拖到这来)
3.将aps.cer转换成aps.pem格式,命令如下:
openssl x509 -in aps.cer -inform DER -out aps.pem -outform PEM
4.将p12格式的私钥转换成pem(注意:执行该命令后,需要输入之前.p12的密码,和生成.pem的密码,最好设置的密码都是同一个方便记忆),命令如下:
openssl pkcs12 -nocerts -out Push.pem -in Push.p12
5.创建p12文件(注意:执行该命令后,需要输入之前设置的密码和aps_Push.p12的新密码,最好设置的密码都是同一个方便记忆),命令如下:
openssl pkcs12 -export -in aps.pem -inkey Push.pem -certfile Push.certSigningRequest -name "aps_Push" -out aps_Push.p12
备注:如果出现 unable to load certificates 错误,把上面的命令中“-certfile Push.certSigningRequest”去掉。
最后得到 aps_Push.p12 就是给.net或者java后台用的推送通知证书。(备注:开发和发布证书的制作步骤都一样,就是在开发者中心选择不一而已,上面“三、生成.cer证书步骤2”已说明)