我正在尝试在我的iPhone上运行应用程序,但我遇到了代码签名身份问题。
实际上我的钥匙串中有两个证书,一个用于分发,另一个用于没有私钥的开发。
我试图再次从developer.apple.com下载证书,但我仍然没有私钥。
事实上,我无法从 Target - >中选择iPhone开发者资料。构建设置 - >代码签名身份,因为我收到错误:
个人资料与您的有效证书/私钥对不匹配 钥匙链。
此外,在组织者中,开发者档案的状态为:
找不到有效的签名身份。
你有什么建议吗?
答案 0 :(得分:22)
如果您有一台旧机器,您已创建CSR并最初下载了证书,则从其钥匙串中导出证书。将其另存为.p12文件,然后将其复制到您当前正在使用的新计算机上。双击.p12文件将其安装到您的钥匙串。展开并查看是否看到私钥。
如果这是原始计算机,并且您的钥匙串中仍然没有私钥,则必须申请新证书。
答案 1 :(得分:3)
如果您的钥匙串中没有私钥或存储在其他任何地方,则无法签署应用程序。 从Apple下载开发人员证书毫无意义。您的私钥永远不会在此过程中的任何时候发送给Apple。只发送您的公钥。
私钥&使用钥匙串创建证书签名请求时,会创建公钥PAIR。如果您丢失了私钥,这正是您需要做的。
答案 2 :(得分:2)
我们在我们的案例中确定我们正在导出WRONG证书,因为Keychain Access存在UX缺陷,因为当您使用搜索框时,您看不到名称与您搜索到的名称相匹配的证书,查看绑定到PRIVATE KEYS的证书,其名称与您搜索的内容相匹配。
由于钥匙串访问的这种令人困惑的用户体验,我们不断导出错误的证书(但是说服自己这是正确的,因为名称匹配)。一旦我们将其确定为正确的证书,我们的进口问题&签名身份丢失私钥消息消失了
请参阅Can't import Code-signing Public or Private keys using Keychain access (Mac OS X Mavericks)以获取完整备注。
答案 3 :(得分:0)
最近这件事发生在我身上。没有正当理由说明为什么会这样。我也试过撤销证书。但没有帮助。所以我创建了一个新证书。
这可能会有所帮助 http://seventhsoulmountain.blogspot.com/2013/09/ios-code-sign-in-complete-walkthrough.html
答案 4 :(得分:0)
Profile doesn't match any valid certificate/private key pair in your keychains.
出现这种特殊错误有几个原因,但最常见的是 -
您在钥匙串中安装的证书不是您创建配置文件的证书,请记住,您在创建配置文件时必须选择证书吗?
您用于创建配置文件的证书已被撤销或过期。