如何以编程方式从钥匙串访问中的“我的证书”导出Certificates.p12?

问题描述 投票:0回答:1

一旦我导入通过向Apple发送CertificateSigningRequest.certSigningRequest获得的*.cer文件,我可以将它们导出为一个Certificates.p12(个人信息交换),其中包含钥匙串访问中此类证书的所有公钥和私钥,以便我可以将它们转移到另一台 Mac,我也可以用它们进行签名。

我想通过一个向导软件自动执行此过程,指导用户在自己的帐户下发布应用程序。

我发现我可以使用 安全二进制文件导出我的所有身份:

security export -k login.keychain -t identities -f pkcs12 -P MYPASSPHRASE -o Certificates.p12

但我认为无法在“我的证书”选项卡中仅导出特定证书。

如何正确完成此操作?

macos certificate keychain p12
1个回答
0
投票

我不确定这是否正是您正在寻找的,但我能够创建一个临时钥匙串,仅将所需的 cer 和密钥文件导入其中,然后从那里导出 p12 - 请参阅下面的代码:

  security create-keychain -p foo tmpKeyChain
  security unlock-keychain -p foo tmpKeyChain
  security import MyKey.key -k tmpKeyChain 
  security add-certificates -k tmpKeyChain MyCer.cer
  security export -P myExportPassword -k tmpKeyChain -t all -f pkcs12 -o myNewP12.p12
  security delete-keychain tmpKeyChain
© www.soinside.com 2019 - 2024. All rights reserved.