问题 新的iOS团队成员:没有有效的签名身份


这令人沮丧。我有两个身份,一个是旧的,一个是新的,后者应该用于将iOS应用程序部署到App Store。

我创建了新用户,授予他管理员权限,然后我创建了应用名称和配置文件。但是,在组织者中我看到了 开发 条款完美无瑕,而且 部署 配置文件向我显示可怕的错误:

找不到有效的签名身份

怎么会这样?

好吧,我看到了 证书 在iOS Provisioning Portal中,只有一个分发证书,即属于我公司的证书。

有没有办法让新用户创建应用程序  访问uberadmin的Xcode?

谢谢和干杯!


1844
2017-07-06 08:55


起源



答案:


您需要用于为公司创建分发证书的密钥。

还记得你创建开发者证书的时候吗?然后你去了钥匙串 - >证书助理 - >从...申请证书

执行此操作时,Mac会将您的证书请求与您的钥匙串中的密钥配对。处理完开发人员证书并将其下载到计算机后,您的计算机就可以通过该密钥访问该证书。

但是,如果您没有创建公司所拥有的分发证书,则您的计算机上没有密钥。

查看钥匙串中的证书:

  • 转到“证书”并展开您的开发人员证书 - 它会有一个带有您姓名的小钥匙。
  • 现在尝试扩展您的分发证书 - 它会  有一把钥匙吧?

如果是这种情况,您有两种选择:

  1. 询问创建分发证书的人是否从其钥匙串中导出。这将创建一个包含证书和密钥的文件。

  2. 删除当前的分发证书,并从您的计算机创建一个新的证书签名请求,该请求将其连接到您拥有的密钥。

第一种方法需要访问“Uberadmins”计算机。第二个要求管理员访问您的团队Apple帐户。使用方法2通常没有任何缺点,因为无论如何都需要不时地创建新证书。它不会影响已发布的应用程序,只是即将发布的版本和更新需要使用最新的证书。

完成所有这些操作后,您需要为App Store创建分发配置文件并连接到您要使用的分发证书。 (如果你使用选项1,你可能已经这样做了)。

将配置文件下载到您的计算机,安装它,然后在您的应用程序中,选择使用此配置文件进行构建以进行分发构建。


16
2017-07-06 09:09



谢谢@jake_hetfield,但如果做那对的人再也无法访问他的电脑怎么办?我知道这是一个悖论,但这就是我所面临的...... - senseiwa
然后你必须使用选项nr 2 =)删除当前证书并不是什么大不了的事(特别是如果没有人拥有密钥则没有 - 那就没用了)。只需在配置门户中使用管理员权限登录,删除dist证书并按照Apple提供的有关如何创建新证书的说明进行操作。 - jake_hetfield
现在我明白了......我想,我必须确保旧密钥在其他任何地方都无法使用。或者,如果可能,撤销证书。谢谢! - senseiwa
您将不得不撤销旧证书以创建新证书,因为当时只能有一个证书,因此无需担心旧证书的密钥...它不适用于新证书... - jake_hetfield
@jake_hetfield你确定吗?我目前在开发中心列出了两个分发证书(意外)。当它发生时,有点吓坏了我。 - Erhannis


答案:


您需要用于为公司创建分发证书的密钥。

还记得你创建开发者证书的时候吗?然后你去了钥匙串 - >证书助理 - >从...申请证书

执行此操作时,Mac会将您的证书请求与您的钥匙串中的密钥配对。处理完开发人员证书并将其下载到计算机后,您的计算机就可以通过该密钥访问该证书。

但是,如果您没有创建公司所拥有的分发证书,则您的计算机上没有密钥。

查看钥匙串中的证书:

  • 转到“证书”并展开您的开发人员证书 - 它会有一个带有您姓名的小钥匙。
  • 现在尝试扩展您的分发证书 - 它会  有一把钥匙吧?

如果是这种情况,您有两种选择:

  1. 询问创建分发证书的人是否从其钥匙串中导出。这将创建一个包含证书和密钥的文件。

  2. 删除当前的分发证书,并从您的计算机创建一个新的证书签名请求,该请求将其连接到您拥有的密钥。

第一种方法需要访问“Uberadmins”计算机。第二个要求管理员访问您的团队Apple帐户。使用方法2通常没有任何缺点,因为无论如何都需要不时地创建新证书。它不会影响已发布的应用程序,只是即将发布的版本和更新需要使用最新的证书。

完成所有这些操作后,您需要为App Store创建分发配置文件并连接到您要使用的分发证书。 (如果你使用选项1,你可能已经这样做了)。

将配置文件下载到您的计算机,安装它,然后在您的应用程序中,选择使用此配置文件进行构建以进行分发构建。


16
2017-07-06 09:09



谢谢@jake_hetfield,但如果做那对的人再也无法访问他的电脑怎么办?我知道这是一个悖论,但这就是我所面临的...... - senseiwa
然后你必须使用选项nr 2 =)删除当前证书并不是什么大不了的事(特别是如果没有人拥有密钥则没有 - 那就没用了)。只需在配置门户中使用管理员权限登录,删除dist证书并按照Apple提供的有关如何创建新证书的说明进行操作。 - jake_hetfield
现在我明白了......我想,我必须确保旧密钥在其他任何地方都无法使用。或者,如果可能,撤销证书。谢谢! - senseiwa
您将不得不撤销旧证书以创建新证书,因为当时只能有一个证书,因此无需担心旧证书的密钥...它不适用于新证书... - jake_hetfield
@jake_hetfield你确定吗?我目前在开发中心列出了两个分发证书(意外)。当它发生时,有点吓坏了我。 - Erhannis


根据Apple的文档:

团队的分发证书允许开发人员构建应用程序以进行分发。如果您的团队想要使用其他Mac来创建分发版本,则需要按照“iOS工具流程指南”中的“保护和传输您的签名和配置资产”中的说明传输分发证书的副本。 (从 管理分发证书

因此,为了让多个用户能够创建和提交App Store构建,您必须在它们之间共享私钥。

为团队创建一个新的私钥,然后将该私钥发送给需要它的每个人。按照下面的说明操作 使用Keychain访问生成证书签名请求

也可以看看: 在itune配置门户中的团队帐户下,在不同组之间共享分发证书私钥的任何问题


0
2017-10-08 20:31