MAS: 代码签名身份私钥

13

我已经从开发门户网站中删除了所有的开发和安装证书,创建了一个新的CSR并生成了新的应用程序和安装证书。

现在,我正在准备将应用程序分发到MAS,并且不断遇到这个错误:

"Name" is a valid identity. However, the private key for the associated package
identity "Name" is not installed on this Mac.

Developer Profiles from a different Mac can be imported.

这让我感到困惑,因为私钥在系统上,如果没有它们,我怎么能生成证书呢?

输入图像描述

4个回答

20

请确保您已经删除了所有旧的证书,在KeyChain应用程序中有一个菜单项可以显示所有过期的证书。我丢弃了所有过期的证书,然后事情开始正常工作。


5
就像我说的那样,在“视图”菜单下确保选择“显示已过期证书”,并且丢弃所有已过期证书,一旦我丢弃了一些旧证书,我就可以验证并提交到MAS。通过创建一个新的用户账户,您实际上已经做到了同样的事情。 - tgunr
2
+1 隐藏的过期证书困扰了我好几天。Xcode看到了一个我在钥匙串中找不到的代码签名标识。原来是一个隐藏的过期证书。 - Bek
非常感谢!我已经卡在这个问题上很久了! - sgonzalez
1
使用钥匙串访问删除过期证书,然后重新启动Xcode对我很有帮助。 - Mindbrix

1

搞定了:

  • 在我的 Mac 上创建了一个新的用户帐户
  • 在那里克隆了仓库
  • 从 Dev Portal 中删除了所有的配置文件和证书
  • 让 Xcode 为您生成所有证书
  • 上传成功!

请使用@tgunr的答案。 - user187676

0

问题出在Mac安装程序分发证书上。

最简单的解决方法是前往Xcode->窗口->组织者->设备,然后在右下角点击刷新并使用您的账户登录... Xcode将生成并下载所需的所有证书和配置文件。


0

我按照指示从钥匙串中删除了所有过期的证书,并在组织者中刷新了配置文件列表。但是只有在我重新启动Xcode之后,错误才消失。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接