我已经创建了证书来启用我的应用程序中的推送服务,但每次我尝试在我的钥匙链中添加证书时,添加证书后它会显示以下错误:
此证书的颁发者无效
我已经创建了证书来启用我的应用程序中的推送服务,但每次我尝试在我的钥匙链中添加证书时,添加证书后它会显示以下错误:
此证书的颁发者无效
当前回答
如果你从fastlane建议中得到这个错误
在尝试以上所有修复后 Security find-identity -v -p codesigning返回找到的有效身份 错误只发生在构建服务器上 如果你“手动”登录,一切正常
那么这可能是由于分发证书在错误的地方:
“登录”钥匙串在登录时工作 “系统”密钥链与构建服务器作为守护进程运行
用屏幕截图检查这个答案,你可以在登录钥匙串中右键单击分发证书,并将其粘贴到系统中。
其他回答
下面是我们解决这个问题的方法。
第一步:打开钥匙链访问,从“登录”和“系统”部分删除“Apple world wide Developer relations certification authority”(将于2016年2月14日到期)。 如果找不到,请使用“视图”菜单中的“显示过期证书”。
步骤2:下载并将其添加到Keychain访问->证书 (有效期2023年2月8日)。
步骤3:现在一切应该都恢复正常了。
参考:苹果全球开发者关系中级证书到期
我想我想明白了。我导入了新的WWDR证书,该证书将在2023年到期,但我仍然在构建过程中遇到问题,我的开发人员证书仍然显示无效的发行者错误。
在keychain访问方式下,执行“查看->显示过期证书”。然后在您的登录钥匙串突出显示过期的WWDR证书,并删除它。 我的系统钥匙串中也有同样过期的证书,所以我也把它删除了(这很重要)。
在从登录和系统密钥链中删除过期的证书后,我能够再次为分发版构建。
请遵循以下步骤:
从这里下载和安装。双击并安装它。 在钥匙串应用程序中选择“查看”->“显示过期证书”。 删除Apple全球开发者关系证书授权 证书从“登录”标签和“系统”标签在钥匙串应用程序。
如果您在登录或系统选项卡中没有找到您的WWDR证书,则选择左侧的类别“所有项目”。您很可能会在这里看到一个过期的WWDR证书,您可以删除它。过期的证书总是用红色星号显示。
您需要从右上角搜索栏搜索World,删除过期的证书。确保您选择了登录和所有项。
下载https://developer.apple.com/certificationauthority/AppleWWDRCA.cer 双击安装到Keychain。 在钥匙串应用程序中选择“查看”->“显示过期证书”。 确认选择“证书”类别。 从“登录”标签和“系统”标签中删除过期的Apple全球开发者关系证书颁发机构证书。
以下是苹果的答案。
Thanks for bringing this to the attention of the community and apologies for the issues you’ve been having. This issue stems from having a copy of the expired WWDR Intermediate certificate in both your System and Login keychains. To resolve the issue, you should first download and install the new WWDR intermediate certificate (by double-clicking on the file). Next, in the Keychain Access application, select the System keychain. Make sure to select “Show Expired Certificates” in the View menu and then delete the expired version of the Apple Worldwide Developer Relations Certificate Authority Intermediate certificate (expired on February 14, 2016). Your certificates should now appear as valid in Keychain Access and be available to Xcode for submissions to the App Store.
https://forums.developer.apple.com/thread/37208