我已经失去了生成.p12的认证,我怎么能生成一个新的?

时间:2013-02-28 14:32:06

标签: ios app-store push-notification csr

目前,我在appStore中发布了一个应用程序,但我不知道为什么推送通知无效。我的服务器中的.p12文件有问题,因为当我的服务器尝试生成推送并将其发送到Apple环境时,我可以在日志中看到下一个错误:

  

02-27 11:42:11,868 [IOSPushNotificationSender]错误javapns.notification.PushNotificationManager - 传递错误:javapns.communication.exceptions.InvalidCertificateChainException:证书链无效(收到致命警报:certificate_unknown)!验证您提供的密钥库是否根据规范...

生成      

2013-02-27 11:42:11,874 [IOSPushNotificationSender]错误camMan.server.mobile.ApplePNSSender - javapns.communication.exceptions.InvalidCertificateChainException:无效的证书链(收到的致命警报:certificate_unknown)!验证您提供的密钥库是否根据规范...

生成

好的,我已经尝试生成一个新的.p12文件,但我不记得究竟哪一个是原始证书(.cer)。

我尝试从配置文件中下载(.cer)但是当我使用钥匙串访问权限打开它时,此证书没有任何私钥。

所以,我迷路了,我不知道我该怎么做...我可以生成一个新的.p12文件而无需修改任何认证或我的应用程序中的任何内容吗?我不想在appStore中上传我的应用程序的新版本......只是我需要知道如何生成或下载或设置新的有效.p12文件以及再次发送推送通知。

此外,我已经检查了配置门户中的所有设置,一切都已启用,活动就像我拥有的​​其他应用...所以我认为唯一的问题是.p12

此外,我仍然拥有与第12页相同的密钥/密码...只有我丢失了CSR(.cer)。

3 个答案:

答案 0 :(得分:2)

听起来您的计算机上缺少私钥 - 要么已删除,要么属于另一台Mac。

在任何一种情况下,您都可以通过上传新的CSR(由Mac上的Keychain Access应用程序创建)来简单地撤销现有的顶点并创建一个新的顶点。

答案 1 :(得分:2)

如果没有私钥,您的证书和配置文件就毫无价值。在仔细阅读有关该主题的Apple文档后,撤销所有内容,将其全部删除,并重新生成新证书和条款。如果不自动执行此操作,则必须修改Xcode项目中的Build设置以使用新设置。这不会影响已批准的应用程序和App Store中的应用程序。

答案 2 :(得分:1)

由于您在开发阶段使用了推送通知,因此可能熟悉将证书安装到服务器的过程。

如果丢失旧文件,您可以随时创建并安装新证书。

你必须注意两件事:

开发阶段:

您正在使用开发推送SSL证书

您的目标服务器是:gateway.sandbox.push.apple.com

生产阶段:

您正在使用生产推送SSL证书

您的目标服务器是:gateway.push.apple.com