ios - Windows 服务器上的 Apple 推送通知证书

标签 ios ssl apple-push-notifications

我正在尝试在 IIS 上生成新的推送通知证书。 过去,我曾经转到 IIS mamager --> 服务器证书,然后选择“创建证书请求”,填写详细信息,它会生成一个 txt 文件,我将其上传到苹果以生成和下载 cer 文件。

我的问题是,由于某种原因我无法上传此文本文件。我收到此消息:

无效的 CSR

选择有效的证书签名请求

有人遇到过这个问题吗?

最佳答案

终于可以用了。 这就是我所做的:

在 IIS 中使用 Cygwin:

  1. 生成私钥:

    openssl genrsa -out myAppName.key 2048
    
  2. 从私钥生成 csr 文件:

    openssl req -new -sha256 -key myAppNameCSR.key -out myAppName.csr
    
  3. 上传csr文件到apple生成证书

  4. 下载证书

  5. 将证书转换为 pem 文件

    openssl x509 -in aps_development.cer -inform der -out myAppNameCert.pem
    
  6. 生成pfx文件

    openssl pkcs12 -export -out myAppNameKey.pfx -inkey myAppNameCSR.key -in myAppNameCert.pem
    

要在 Windows Server 中安装证书:

单击“开始”>“运行”。 在提示符下,键入 mmc,然后单击“确定”打开 Microsoft 管理控制台。

单击"file",然后单击“添加/删除管理单元”。 从可用管理单元列表中单击“证书”,然后单击“添加”。

点击“计算机帐户”。

单击“下一步”,然后单击“完成”。 单击“确定”。 右键单击“个人”树节点并选择“所有任务”>“导入”。

按照向导操作,将其指向生成的 pfx 文件,并提供在创建过程中用于保护该文件的密码。 在“个人”树节点下,双击“证书”文件夹。 右键单击新安装的证书。 选择“所有任务”>“管理私钥”。

在“安全”选项卡中,添加提供读取访问权限的网络服务帐户。 将组 IIS_IUSRS 添加到私钥,并确保其具有完全控制权。

使用 Cygwin 制作 PEM 文件

现在你有了这些文件: pfx 文件形式的私钥 SSL 证书 aps_development.cer 作为 pem 文件

将pfx文件转换为pem文件:

openssl pkcs12 -nocerts -out myAppNameKey.pem -in myAppNameKey.pfx

最后,将证书和 key 合并到一个 .pem 文件中:

cat myAppNameCert.pem myAppNameKey.pem > ckDevelopment.pem

希望这可以节省一些人的时间......

关于ios - Windows 服务器上的 Apple 推送通知证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36472960/

相关文章:

ios - Apple 推送通知集成问题

ios - 从 Interface Builder 连接的数据源在初始化程序中返回 nil

ssl - Github 无法访问 SSL 连接错误

ios - 加拿大数据和 iOS 推送通知

java - Keytool 插件 Eclipse 不工作

ssl - 如何允许客户端子域链接到我在 saas 中的通配符域

ios - 检测应用程序是否为 : didReceiveRemoteNotification: fetchCompletionHandler: was called by tapping on a notification in Notification Center

iphone - 将数据加载到 uiviewcontroller 中的 uitableview

iphone - Xcode:调试意外的 iOS 应用程序崩溃

ios - 如何使用 UIAppearance 设置 ViewController 的背景颜色