【问题标题】:Validating fails because of account permissions由于帐户权限,验证失败
【发布时间】:2016-12-14 01:46:01
【问题描述】:

我已被团队管理员通过 iTunesConnect 添加为团队成员,我正在尝试创建存档并对其进行验证。正如标题所说的那样,它失败了:

另外,如果我尝试让 Xcode 自动修复此问题,我会收到此错误:

团队代理在 iTunesConnect 中创建了 iOS 分发配置文件,根据文档,团队成员确实无法创建证书:

但这就是团队管理员为我创建它们的原因,但看起来我的 Xcode 尝试创建证书,而不是下载和使用它们(在验证存档时)。任何想法为什么会发生这种情况以及如何验证存档并将构建上传到 iTunesConnect?

【问题讨论】:

    标签: ios xcode validation app-store-connect provisioning-profile


    【解决方案1】:

    对我来说,我不小心启用了应用程序组(对于另一个应用程序包 ID)。

    在功能中禁用应用组解决了这个问题

    【讨论】:

      【解决方案2】:

      首先,Xcode 正在尝试创建一个证书,因为它认为您的代码签名设置有问题。这可能意味着几件事:

      1. 您没有有效的 iOS 分发证书。要检查这一点, 进入钥匙串访问应用程序并检查您是否有绿色 当您从列表中选择证书时,复选标记 离开了。

        如果它无效,它可能已在 Apple 开发者网站上被撤销,或者 它可能已经过期了。

        此外,请确保您拥有适当的配置文件和 从 Apple 的开发者网站下载证书。唯一的事情 您的团队管理员应该需要发送给您的是私钥。如果私人 密钥无法连接到您从 Apple 开发者网站获得的证书, 你得到了错误的钥匙。

      2. 您可能拥有有效的证书,但缺少所需的证书 私钥,允许您使用该证书进行签名。 这是使用证书签署事物所必需的,并且将 还会导致 Xcode 在提交时尝试生成新证书。制作 确保您可以展开证书以查看第 3 项中显示的私钥 下图。

      3. 项目代码签名设置正在引用代码签名身份 与钥匙串中的证书和密钥不匹配。我建议 您在项目的代码签名部分使用以下设置。
        对于Provisioning Profile,选择“自动”。对于Code Signing Identity, 为Debug 构建配置选择“iOS Developer”,并选择“iOS Distribution” 对于Release 构建配置。

      我还建议您观看来自 WWDC 的 Apple 在 What's New in Code Signing 上的精彩视频,该视频涵盖了代码签名 iOS 应用程序的关键组件。

      【讨论】:

      • 目前,我可以肯定分发证书是有效的,至少它在 KeyChain 中显示为有效。关于私钥,我不知道如何检查它是错误的还是正确的?扩展证书时有一个私钥。关于其他事情,我会尽快检查并告知结果。
      • 您能否验证向您发送证书的团队管理员可以构建和提交应用程序?拥有有效证书是其中的一部分,但它必须是与 iOS 分发配置文件相关联的证书,该配置文件与应用 ID 相关联。这就是为什么最好删除您提供的证书和配置文件,然后从 Apple 的开发人员网站下载配置文件和证书。
      • 是的,我们试过了。他可以构建和上传......我明天将能够提供更多信息。感谢您的时间和精力!
      • 我发现了一件奇怪的事情。在 iTC 中,我无法下载分发证书。它是可见的,但我无法下载它。无论如何,团队管理员将证书连同他的私钥一起发给了我。所以很快就会更新结果。
      • 另外,拥有团队成员角色只能控制等式的一半。您还需要在 iTunes Connect 中添加为 App Manager 角色。在此处查看角色:developer.apple.com/library/ios/documentation/…
      【解决方案3】:

      证书始终与私钥配对。您需要证书/密钥对才能正确签名。

      由于您的团队代理创建了分发证书,因此证书/私钥位于他们计算机的钥匙串上。即使您要下载证书,您也会丢失私钥。您的团队代理需要打开 Keychain App,将其导出,发送给您,然后您需要将其导入您的钥匙串。

      此时,假设您还下载了正确的配置文件并且构建设置正确,签名应该可以工作。

      【讨论】:

      • 谢谢本,我会试试这个。是的,我没有他的 Mac 的私钥(只有证书)。就这样吧。
      • 所以,它没有以某种方式工作。我试过你说的。 Team Agent 已将其分发证书与私钥一起导出,并且证书有效。也选择了正确的团队名称。此外,尝试清理项目/退出 Xcode,删除派生数据。还是什么都没有。
      • 您确定您获得了正确的证书和密钥吗?开发与分发配置文件有不同的配置。另外,你能显示你的项目构建设置吗?
      • @wottle 我很肯定我使用了正确的证书/密钥 - 这是团队管理员在他的计算机上使用的证书/密钥。他给我发了一个 .p12 文件,所以我已经成功导入了所有内容。我已经为调试设置了正确的开发人员配置文件,并为发布设置了正确的分发配置文件(在代码签名身份部分,如果这是您对构建设置的意思)。
      • @wottle 请记住,我是团队成员,不是管理员也不是代理。也许成员无法将构建上传到 iTC。
      猜你喜欢
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-31
      • 1970-01-01
      • 2019-09-24
      相关资源
      最近更新 更多