我尝试了一遍又一遍地生成一个。pem文件,每次都从客户端帐户生成证书,然后使用终端生成。pem文件,但这没有用。谁能给出一个循序渐进的步骤?
当前回答
导出Cert.p12和key.p12后,操作非常简单, 请查看下面生成“apns”.pem文件的命令。
https://www.sslshopper.com/ssl-converter.html
command to create apns-dev.pem from Cert.pem and Key.pem
openssl rsa -in Key.pem -out apns-dev-key-noenc.pem
cat Cert.pem apns-dev-key-noenc.pem > apns-dev.pem
以上命令对沙盒和生产都有用。
其他回答
苹果已经更改了颁发的证书的名称。现在,您可以在开发和生产中使用相同的证书。虽然您仍然可以请求仅用于开发的证书,但不能再请求仅用于生产的证书。
谢谢!以上所有答案。 我希望你有一个。p12文件。现在,打开终端写下面的命令。将terminal设置为存放.12文件的路径。
$ openssl pkcs12 -in yourCertifcate.p12 -out pemAPNSCert.pem -nodes
Enter Import Password: <Just enter your certificate password>
MAC verified OK
现在生成了.pem文件。
验证.pem文件 首先,在文本编辑器中打开.pem以查看其内容。证书内容格式如下所示。确保pem文件包含证书内容(从BEGIN Certificate到END Certificate)以及证书私钥(从BEGIN Private Key到END Private Key):
> Bag Attributes
> friendlyName: Apple Push Services:<Bundle ID>
> localKeyID: <> subject=<>
> -----BEGIN CERTIFICATE-----
>
> <Certificate Content>
>
> -----END CERTIFICATE----- Bag Attributes
> friendlyName: <>
> localKeyID: <> Key Attributes: <No Attributes>
> -----BEGIN PRIVATE KEY-----
>
> <Certificate Private Key>
>
> -----END PRIVATE KEY-----
此外,您还可以通过转到SSLShopper certificate Decoder并粘贴证书内容(从BEGIN certificate到END certificate)来检查证书的有效性,以获得有关证书的所有信息,如下所示:
根据“处理推送证书问题”
Apple开发者计划帐户中可用的SSL证书包含公钥,但不包含私钥。私钥只存在于创建上传到Apple的证书签名请求的Mac上。导出PEM (Privacy Enhanced Mail)文件时,公钥和私钥都需要使用。
您无法从客户端提供的证书中导出工作的PEM的原因可能是您没有私钥。证书包含公钥,而私钥可能只存在于创建原始CSR的Mac上。
你可以:
尝试从最初创建CSR的Mac中获取私钥。可以从这台Mac上导出PEM,也可以将私钥复制到另一台Mac上。
or
创建一个新的CSR、新的SSL证书,这一次备份私钥。
导出Cert.p12和key.p12后,操作非常简单, 请查看下面生成“apns”.pem文件的命令。
https://www.sslshopper.com/ssl-converter.html
command to create apns-dev.pem from Cert.pem and Key.pem
openssl rsa -in Key.pem -out apns-dev-key-noenc.pem
cat Cert.pem apns-dev-key-noenc.pem > apns-dev.pem
以上命令对沙盒和生产都有用。
$ cd Desktop
$ openssl x509 -in aps_development.cer -inform der -out PushChatCert.pem
推荐文章
- 如何删除默认的导航栏空间在SwiftUI导航视图
- 如何在iOS中使用Swift编程segue
- Swift -整数转换为小时/分钟/秒
- Swift:声明一个空字典
- 在成功提交我的应用程序后,“太多符号文件”
- 首先添加一个UIView,甚至是导航栏
- 我如何改变UIButton标题颜色?
- 在Swift中如何调用GCD主线程上的参数方法?
- NSLayoutConstraints是可动画的吗?
- iOS -构建失败,CocoaPods无法找到头文件
- CFNetwork SSLHandshake iOS 9失败
- 请求失败:不可接受的内容类型:文本/html使用AFNetworking 2.0
- 缺少推荐的图标文件-该包不包含iPhone / iPod Touch的应用程序图标,像素为“120x120”,png格式
- 以编程方式创建segue
- 如何使用Xcode创建。ipa文件?