在将plist上传到https://identity.apple.com/pushcert/时,我打了'无效证书签名请求',以下是我用来生成plist的步骤:

  • 作为供应商,使用MacBook的KeyChain Access创建供应商CSR,以上传到成员(member)中心以生成MDM签名证书,并以p12格式从KeyChain Access导出私钥,例如vendor.p12
  • 使用Openssl创建客户CSR:
    -openssl genrsa -des3 -out customerPrivateKey.pem 2048
    -openssl req-新-key customerPrivateKey.pem -out customer.csr
  • 作为供应商,从供应门户下载MDM签名证书,WWDR中间证书,并从http://www.apple.com/appleca/AppleIncRootCertificate.cer下载Apple根证书,然后使用以下命令将这三个证书一一转换为PEM格式,程序将以PushCertCertificateChain的形式读取该证书:
    -openssl x509 -inder der -in AppleWWDRCA.cer -out chain.pem
  • 作为供应商,我遵循《移动设备管理协议(protocol)引用》中的示例Java代码,使用从vendor.p12中提取的私钥对customer.csr进行了签名。
  • 使用Safari将生成的plist与客户Apple ID
  • 上载到https://identity.apple.com/pushcert/

    以上步骤有什么问题吗?请指教。非常感谢!

    最佳答案

    请参阅detailed steps and source code here生成plist。

    09-25 23:32