Ios 将推送通知证书导出为P12

Ios 将推送通知证书导出为P12,ios,apple-push-notifications,amazon-sns,Ios,Apple Push Notifications,Amazon Sns,通常,我可以将从苹果会员中心下载的keychain证书导出为p12文件。然而,苹果似乎改变了什么 我需要它作为p12导入亚马逊SNS服务。我曾尝试转换为PEM文件,但在控制台上产生错误 您无法导出到.p12,因为您的计算机上没有安装私钥(如果安装了私钥,则证书旁边会有一个“展开”箭头,就像您的iPhone分发证书一样。)导出之前,您需要从生成证书的计算机获取私钥。您没有私钥 因此,解决方案是您必须撤销以前的证书并再次创建新的APNS配置文件。我找到的解决方案已发布在此处: 我复制并粘贴答案:结果

通常,我可以将从苹果会员中心下载的keychain证书导出为p12文件。然而,苹果似乎改变了什么

我需要它作为p12导入亚马逊SNS服务。我曾尝试转换为PEM文件,但在控制台上产生错误


您无法导出到.p12,因为您的计算机上没有安装私钥(如果安装了私钥,则证书旁边会有一个“展开”箭头,就像您的iPhone分发证书一样。)导出之前,您需要从生成证书的计算机获取私钥。

您没有私钥


因此,解决方案是您必须撤销以前的证书并再次创建新的APNS配置文件。

我找到的解决方案已发布在此处:


我复制并粘贴答案:结果表明,您只需在左侧面板上选择“我的证书”,它就会启用.p12选项。

如果接受的答案不适用于您(例如,因为您从同一Mac创建了CSR,并且应该在此Mac上拥有私钥),那么还有一种可能性:

当您碰巧选择了错误的钥匙链时(例如,如果您意外地单击了系统钥匙链而不是登录钥匙链),您可能会遇到相同的问题。如果证书签名请求来自该机器,它会将私钥与登录密钥链相关联(至少,这似乎是默认设置)。因此,如果您以某种方式下载证书并将其导入另一个密钥链,如系统密钥链(或一些评论提到的iCloud密钥链),则密钥链访问将找不到匹配的私钥,也不会将证书置于“我的证书”下,因此无法导出p12。这与在不同Mac上导入密钥链的情况类似


确保导入到与私钥关联的密钥链中。通常这是登录密钥链。

在屏幕截图的背景中,证书左侧没有灰色箭头。我怀疑您在“这台计算机”中是否有此证书的“私钥”。如果这里没有私钥,.p12选项将变灰。但这对我也不起作用。可能是因为我以前的MacBook在iCloud中的钥匙链碎片吗?@NazarMedeiros确实如此。。。但正如我所说,现在你正在创建一个新的,所以它必须是你的mac私钥,它将被链接。但它仍然不起作用。即使我创建了所有新的内容,我也看不到证书。请问,有人能帮忙吗?我真的很挣扎issue@NazarMedeiros你能详细说明一下你到底在做什么吗?如果你确实在本地有“证书签名请求”,那么点击左侧面板中的“我的证书”,然后你可以使用“.p12”选项导出。感谢@chelder的参与