繁体   English   中英

钥匙串中出现问题:iPhone 分发证书不受信任

[英]Getting issue in keychain: iPhone Distribution Certificate is not trusted

我正在开发 iOS 企业应用程序,现在我们的 iOS 分发证书已过期,我正在使用以下步骤创建新证书:

  1. 从钥匙串访问创建证书签名请求。
  2. 登录 developer.apple.com 并使用证书签名请求生成分发证书。
  3. 下载新的 iOS 分发证书并安装。

在此之后,我可以在钥匙串访问中看到 iOS 分发证书,但出现错误: “iPhone 分发证书不受信任”。

在此处输入图像描述

另外,我尝试过使用自动管理签名,并尝试导出 ipa 文件,但出现以下错误:

在此处输入图像描述

请帮我解决这个错误。

只需从此处下载证书并安装即可。 如果这不起作用,请查看https://developer.apple.com/de/support/expiration/

https://developer.apple.com/de/support/expiration/应该是答案。 只需手动安装证书或升级到 Xcode 11.4.1 或更高版本。 升级到 Xcode >= 11.4.1 后,我不得不打开一个 Xcode 项目并且不得不等待几秒钟。 之后自动安装了新的 Apple 全球开发者关系中级证书。

我也有类似的问题:

iphone开发者证书不受信任

这是因为 :

颁发机构:Apple 全球开发者关系认证机构

请尝试以下步骤来解决此问题。

  • 您需要更新证书,请点击此链接获取: https ://www.apple.com/certificateauthority/AppleWWDRCAG3.cer

  • 打开终端,进入文件目录,然后使用以下命令安装新证书:

     sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain AppleWWDRCAG3.cer

参考: https ://github.com/actions/virtual-environments/issues/1620

我实际上浪费了 1 周的时间来解决这个错误,首先我得到代码签名错误,即使在 4 天后从 Xcode 创建的示例应用程序登陆到此页面并发现我需要将苹果开发人员证书添加到我的钥匙串中。 你可以在这里找到但是这样做并不能完全解决我的错误。 我得到了进一步的错误,到目前为止只有 7 天。 https://developer.apple.com/forums/thread/673846

所以我再次去了https://developer.apple.com/de/support/expiration/页面,发现如果我们的 Xcode 小于 11.4 或者在某些情况下操作系统不是 Big Sur,那么我们将无法签署应用程序。

已知的问题

Xcode 11.4.0 及更早版本可能无法使用新的 Apple Worldwide Developer Relations Certification Intermediate Certificate 颁发的签名证书对软件进行签名。 如果您无法在构建机器上升级到支持的 macOS 或 Xcode 版本,您可以使用较早的 Xcode 客户端构建和归档您的应用程序,并使用最新版本对其进行签名以进行分发。 或者,您可以利用 codesign 工具使用命令行对您的软件进行签名。

所以你需要升级到 xcode > 11.4 否则你可能无法签署应用程序。

目前的 Apple Worldwide Developer Relations Certification Intermediate Certificate(中级证书)将于 2023 年 2 月 7 日到期。更新后的证书将用于签署 2021 年 1 月 28 日之后为 Apple Developer Programs 颁发的新软件签名证书。 其余服务证书将在未来更新,此页面将更新以反映其他证书更改。

https://developer.apple.com/support/expiration/

对我来说,这是一个反复出现的问题^$&#%^ ...

似乎 2023 年到期的旧Apple Worldwide Developer Relations Certification Intermediate Certificate会自动恢复(由我不知道是什么触发),有时会导致我的开发者证书不受信任。

我想有时系统会不小心尝试使用 2023 关系证书而不是更新的证书来授权开发证书,后者在 2030 年到期,然后将状态设置为untrusted

在这种情况下,最简单(但仍然很烦人)的解决方案就是从钥匙串中删除 2023 关系证书,然后开发证书再次被信任。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM