是否有任何命令可以检查 iOS 应用程序分发证书是否已安装在 mac 钥匙串(keychain)中。使用证书名称来识别证书并没有帮助,因为一个苹果开发者帐户可以拥有多个分发证书,并且这些证书具有相同的名称。
最佳答案
不幸的是,代码签名需要大量关于应用程序构建状态的信息(例如,发布与调试、有效的 AppID、有效的签名身份构建配置、有效的供应配置文件配置)以及存储的证书和 key 信息在当前用户的钥匙串(keychain)中。作为对您问题的直接回答:不,没有与 Xcode 一起打包的一次性“checkMySigningIdentity”工具可以为您提供全自动的二进制 Yes/No 我怀疑您正在寻找。通过 security
CLI 公开了一组工具,可用于验证签名身份或询问已安装证书的内容。例如,您可以 grep security find-identity -v -p codesigning
的输出内容:
bmusial@BKM-rMBP:~$ security find-identity -p codesigning -v
1) A1B2C3D4E5F6198609D8AACF3F3041F05163A3EC "iPhone Developer: Bryan Musial (1234567890)"
2) 8FDF5DCEC607FE669BB6C728CB51A1B2C3D4E5F6 "iPhone Developer: Bryan Musial (0987654321)"
2 valid identities found
然后在括号中查找与已知分发证书匹配的标识符(显然我只安装了开发证书,但分发证书也一样)。您可以更进一步,从 Keychain 获取有问题的证书,然后询问用户 ID、组织单位或序列号以进行额外的验证。
最终结果是,目前没有可用于获取所需通过/失败结果的一键式 CLI。但是,您可能希望查看可用于构建自己的脚本的脚本或脚本片段的开源工具。
关于ios - 检查是否安装了 iOS 分发证书的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33485124/