制作苹果推送通知APNS服务器证书文件

时间:2022-05-17 00:25:13

1.准备证书申请文件

  • 打开苹果电脑实用工具里的钥匙串访问程序
  • 选择钥匙串访问—>证书助理—>从证书颁发机构申请证书
  • 输入邮件地址,常用名词随便命名,在这里命名为APNS
  • 选择存储到磁盘,将生成的APNS.certSigningRequest文件保存到本地磁盘
  • 此时,在钥匙串访问程序的密钥(Keys)分类里应该可以找到APNS的专用密钥,右键点击导出“APNS”将专用密钥导出为p12文件,保存时会提示输入口令,输入后生成APNS.p12文件

2.准备App ID和SSL证书

  • 登陆苹果开发者门户,点击进入iOS Provisioning Portal—>App IDs
  • 点击New App ID,填写名称以及你应用程序的Bundle Identifier
  • 点击Configure,选中Enable for Apple Push Notification service
  • 点击Development Push SSL Certificate(Production Push SSL Certificate遵循同样的步骤)的Configure按钮
  • 点击Continue,选择刚刚生成的APNS.certSigningRequest点击Generate
  • 稍等几秒就完成证书生成,点击Continue,并Download生成的证书aps_development.cer

3.制作推送服务器需要的p12文件
使用MAC命令行下的OpenSSL生成,所用文件:CSR认证签名申请文件(APNS.certSigningRequest),专用密钥(APNS.p12),SSL证书(aps_development.cer)

#将aps_development.cer转换成aps_development.pem格式
openssl x509 -in aps_development.cer -inform DER -out aps_development.pem -outform PEM
#将p12格式的专用密钥转换成pem,依次输入密码
openssl pkcs12 -nocerts -out APNS_Noenc.pem -in APNS.p12
#创建PKCS#12格式的p12文件
openssl pkcs12 -export -in aps_development.pem -inkey APNS_Noenc.pem -certfile APNS.certSigningRequest -name "aps_development" -out aps_development.p12