【问题标题】:Xamarin iOS 16.5: certificate is "Not in Keychain"Xamarin iOS 16.5:证书是“不在钥匙串中”
【发布时间】:2020-04-02 01:20:47
【问题描述】:

我在developer.apple.com中创建了一个分发证书,我下载了它,然后在mac的下载文件夹中双击它。证书出现在 Keychain Access 中,但似乎没有与之关联的密钥。

在 Visual Studio (Windows) 16.5 中,在工具 > 选项 > Apple 帐户中,它说证书是“不在钥匙串中”。

对如何解决这个问题有帮助吗?

【问题讨论】:

  • 嗨,它发生在 16.5 之前吗?您可以分享一个屏幕截图来解释这一点。
  • @Junior Jiang -- 它确实不会在 16.5 之前发生。我在工具 > 选项 > Xamarin 中包含了来自 VS Apple 帐户的屏幕截图。两个分发证书都出现在 Mac 上的 Keychain Access 中,但没有关联密钥。 (此处显示“Valid”的开发证书OTOH在Keychain Access中有一个密钥。)
  • @Junior Jiang -- 还发布了 Mac 上 Keychain Access 的截图。

标签: ios xamarin


【解决方案1】:

从分享的截图来看,开发证书没问题,点击向下箭头后会看到private key,在PC端VS显示ValidTHINKPAD2)。

但是,分发证书看不到向下箭头。您应该确保此证书是从新的 CSR 文件 Mac 创建的,以生成 分发证书。您不能使用其他人生成的 CSR文件或开发生成的 CSR 文件以生成分发证书

顺便说一下,如果证书在系统组,你可以把它复制到登录组。然后它会显示私钥。

【讨论】:

  • 我听从了您的建议,并使用新的 CSR 文件创建了新的分发证书。在 mac 上下载和安装后,它显示在 Keychain Access 中,带有一对私钥和公钥。但是,在 Windows 中的 VS 中,新证书仍然被列为“不在 Keychain 中”。
  • 然后我做了什么,我从 VS 中的 Apple Accounts 创建了另一个新的分发证书,它显示为“有效”。所以我在 Mac 上下载了它,并安装了它,它出现在钥匙串中,但没有钥匙。我将它分配给我的分发配置文件,然后在 Apple 帐户的 Windows 中的 VS 中我做了“下载所有配置文件”,我能够在 VS 中的捆绑签名选项中看到证书和配置文件,所以一切看起来都不错. (回到钥匙串访问,它现在显示它有一个公钥和私钥对。在它显示之前有些滞后?)这一切看起来就像烟雾和镜子。
  • 请注意,这种直接在 VS 中创建证书的新方法虽然看起来很有效,并且生成了一个密钥对,但它不涉及使用 CSR 文件。 (至少不是直接的,也许在幕后它自己产生了。)
  • @BobC 很高兴解决了它。我忘了注意,将证书下载到 Mac 后,您需要将证书从系统组复制到登录组。然后它会显示私钥。您可以检查系统组中的所有证书都没有显示私钥。i.stack.imgur.com/XtECB.png
  • @BobC 嗨,鲍勃,我希望你一切都好,你能否发布你的 cmets 作为答案,因为它们确实帮助我解决了这个问题。谢谢。
猜你喜欢
  • 2020-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多