【问题标题】:Proper way to renew distribution certificate for iOS为 iOS 更新分发证书的正确方法
【发布时间】:2012-06-01 08:44:30
【问题描述】:

我的分发证书以及我的所有配置文件将于 6 月 7 日到期。我如何正确更新它?我现在应该撤销它并要求一个新的吗?如果我这样做了,我所有的活动应用程序都会被删除吗?

【问题讨论】:

  • 不知什么原因,在多年没有使用这个账号后,我收到了关于这个回复的通知。我还没有死(还)。我还要感谢多年来在 StackOverflow 上帮助我的每个人。我 14 岁(现在 21 岁)时写了这个问题。从那以后,我一直在制作 iOS 应用程序,并且很快将在 Apple 开始全职工作(我的梦想是我记事以来的梦想)。再次感谢一路上帮助过的每一个人!
  • 好故事!是的,岁月流逝!你甚至无法想象在在线 QA 之前编程是如何完成的。欢呼
  • @Fattie 为什么会出现警告?除了 Apple 页面上的小 UI 更改外,公认的答案仍然正确。并非所有事情都因为陈旧而自动出错。
  • 嗨@Theo,我认为有一个很长的讨论(现已删除)所以我的评论(我刚刚删除它!)没有具体意义,感谢您指出。请注意,在这种特定情况下,Ticked 5-yr old answer具有错误信息,例如 SLBarth 解释。

标签: iphone ios app-store app-store-connect ios-provisioning


【解决方案1】:

大家好..

我找到了更新 IOS 证书的最佳方法,只需简单的步骤。 在这里,每个人都可以毫无疑问地更新。

IOS 证书更新/证书更改步骤:

1)打开钥匙链访问。

2)点击展示证书。

3) 钥匙串访问 => 证书助手 => 向证书颁发机构申请证书..

4) 打开开发者控制台 => 帐户 => 证书 IDS 和配置文件。

5) 点击 Certificates + 图标并创建一个新 => ios Distribution(应用商店和 Ad Hoc)。然后点击继续按钮后。

6) 选择并上传证书 => 下载上传的证书后点击下载按钮。

7)然后编辑证书,然后更新最新上传的证书。

8) 打开 Xcode => 点击签名和功能 => 下载配置文件 => 选择配置文件新上传的证书。

参考视频链接https://youtu.be/v19ZoFa1cJs

【讨论】:

    【解决方案2】:

    截至 2020 年 1 月和 Xcode 11.3.1 -

    • 打开 Xcode
    • 打开 Xcode 首选项(Xcode->Preferences 或 Cmd-,)
    • 点击帐户
    • 在左侧,点击您的开发者 ID
    • 在右下角,单击管理证书...
    • 在左下角,单击+(加号)右侧的箭头
    • 从菜单中选择 Apple Distribution

    Xcode 会自动创建 Apple Distribution 证书,将其安装在 Keychain Access 中,并更新 Xcode 的签名信息

    (注意:现在提供单个 Apple Distribution 证书,而不是以前的 iOS Distribution 证书和等效证书。)

    【讨论】:

    • 好奇:从苹果收到我的邮件以更新 iOS 分发证书。没有信息表明我应该创建一个 Apple 分发证书。
    • 电子邮件没有提及,@ekkescorner。它在在线文档中。
    • 这个重新创建证书的新工作流程听起来太容易了 ;-) 再次感谢
    • 并编辑您的配置文件以包含此证书
    【解决方案3】:

    当您的证书过期时,它会从会员中心的“证书、标识符和配置文件”部分消失。没有“更新”按钮可让您更新证书。 您可以在证书过期之前撤销证书并生成新证书。或者您可以等待它过期并消失,然后生成一个新证书。在Apple's App Distribution Guide:

    更换过期证书

    当您的开发或分发证书过期时,将其删除 并在 Xcode 中申请新证书。

    当您的证书过期或被吊销时,任何使用过期/吊销证书的配置文件都将反映为“无效”。您无法使用这些无效的配置文件构建和签署任何应用程序。可以想象,我宁愿在证书过期之前撤销并重新生成证书。

    问:如果我这样做了,我的所有在线应用都会被删除吗?

    已经在 App Store 上的应用可以继续正常运行。同样,Apple's App Distribution Guide

    重要提示:重新创建您的开发或分发证书 不会影响您提交到商店的应用程序,也不会 影响您更新它们的能力。

    那么……

    问:如何正确续订?

    如上所述,没有更新证书。请按照以下步骤吊销和重新生成新证书以及受影响的配置文件。 Xcode 8.3 和 Xcode 9 的说明已更新。

    第 1 步:吊销即将到期的证书

    登录Member Center > 证书、标识符和配置文件,选择即将到期的证书。记下证书的到期日期,然后单击“撤销”按钮。

    第 2 步:(可选)从您的钥匙串中删除已撤销的证书

    或者,如果您不希望系统中存在已撤销的证书,您可以将它们从系统中删除。不幸的是,Xcode > Preferences > Accounts > [Apple ID] > Manage Certificates 中的“删除证书”功能似乎总是被禁用,所以我们必须使用 Keychain Access.app (/Applications/Utilities/Keychain Access.应用程序)。

    按“登录”钥匙串和“证书”类别过滤。找到您刚刚在第 1 步中吊销的证书。

    根据您刚刚吊销的证书,搜索“Mac”或“iPhone”。 Mac App Store 分发证书以“3rd Party Mac Developer”开头,iOS App Store 分发证书以“iPhone Distribution”开头。

    您可以根据团队名称、证书类型(Mac 或 iOS)以及您在第 1 步中记下的证书的到期日期来定位被吊销的证书。

    第 3 步:使用 Xcode 申请新证书

    在 Xcode > Preferences > Accounts > [Apple ID] > Manage Certificates... 下,单击左下角的“+”按钮,然后选择您刚刚撤销的相同类型的证书让 Xcode 请求新的给你一个。

    第 4 步:更新您的配置文件以使用新证书

    之后,返回Member Center > Certificates, Identifiers & Profiles > Provisioning Profiles > All。您会注意到,任何使用已撤销证书的配置文件现在都反映为“无效”。

    点击任何现在“无效”的配置文件,点击“编辑”,然后选择新创建的证书,然后点击“生成”。重复此操作,直到使用新证书重新生成所有配置文件。

    第 5 步:使用 Xcode 下载新的配置文件

    提示:在使用 Xcode 下载新配置文件之前,您可能需要从 Mac 中清除所有现有的和可能无效的配置文件。您可以通过删除 ~/Library/MobileDevice/Provisioning Profiles 中的所有配置文件来做到这一点

    返回 Xcode > Preferences > Accounts > [Apple ID],点击“Download All Profiles”按钮,要求 Xcode 从您的开发者帐户下载所有配置文件。

    【讨论】:

    • 您好,俊杰,谢谢!我正在使用 Xcode 7 面对this problem。如果我撤销分发证书,使用 AdHoc 分发配置文件发布的应用程序会发生什么情况?他们还活着吗?谢谢
    • @Frade 根据 Apple:iOS 分发证书(内部、内部使用的应用程序),用户将无法再运行已使用此证书签名的应用程序。您必须分发使用新证书签名的应用程序的新版本。见developer.apple.com/support/certificates
    • 我问的是 AdHoc,但可能是同样的情况。谢谢
    • @junjie 如果商店中发布的应用程序具有推送通知权限,会发生什么情况?证书过期后还能发送推送通知吗?
    • @Otávio 您的应用分发证书(我们在这个问题中处理的内容)与您的 APNS 证书是分开的。 APNS 证书不是应用程序二进制文件的一部分。您可以撤销/更新您的 APNS 证书,而无需更新您的应用程序二进制文件。需要 APNS 证书的是您的推送服务器。
    【解决方案4】:

    更新证书非常简单。转到您的开发人员会员中心并转到您的配置文件,查看证书活动和非活动证书是什么,然后选择非活动证书并点击编辑按钮,然后点击生成按钮。现在您的证书已成功续订 1 年。谢谢

    【讨论】:

    • @Shanmugasundharam ,我们是否在创建 Provisioning 配置文件后在应用商店中推送新版本。
    • 这仍然需要从 xcode 生成的 .csr 文件,至少,从我发现的内容。从 developer.apple.com/account,我转到“证书、ID 和配置文件”->“配置文件”。我看到一个 ReleaseProfile 和一个 TestingProfile。两者都在“过期”列下显示“无效”。我单击 ReleaseProfile,然后单击“编辑”。在“证书”下,它显示“没有可用的证书”,并带有“创建证书”按钮。我点击它。然后我选择“iOS 分发”和“继续”。现在,为了创建它,我需要“选择文件”,意思是上传一个 CSR 文件,我认为它只能从 xcode 生成。
    • 发现我可以通过在 Linux 中运行来生成 CSR: **** openssl req -nodes -newkey rsa:2048 -keyout private_key.key -out cer_sign_request.csr ****不敢相信有这么多需要 xcode 的“如何生成证书 csr”的答案,而没有提到这个不需要清理旧 Mac 并启动笨重 IDE 的简单解决方案。
    • @NirajPaul 您的应用程序仍然适用于从商店下载它的用户,如果您从商店下载它,它甚至也适用于您。这只会影响使用配置文件将应用程序放在设备上的用户(即,您从 xCode 构建并安装它到您的设备上)。过去、现在和未来的用户不会注意到任何不同。 stackoverflow.com/a/7128502/3493877来自这里
    【解决方案5】:

    您的实时应用不会被删除。应用商店中的任何内容都不会发生任何事情。

    一旦它们正式到期,唯一会受到影响的是您签署代码的能力(从而进行新的构建和提供更新)。

    关于您的分发证书,一旦过期,它就会从会员中心的“证书、标识符和配置文件”部分消失。如果您想在到期前续订,请撤销当前证书,您将获得一个按钮来申请新证书。

    关于配置文件,到期前不用担心,继续使用即可。到期后只需更新即可。

    放心的是,您在商店中的实时应用不会发生任何事情。

    【讨论】:

    • 谢谢,它们今天过期了。更新它们没有问题。
    • 仅供参考。我吊销了用于企业分发的证书,并且获得了续订证书的选项。它刚刚消失了。应用程序已关闭(无法安装),直到我使用新证书重建它。
    • 嘿,不要吊销您的内部证书!重新启动/3 天后,您的内部应用程序将无法运行,除非您可以在该时间段内更新所有应用程序。 Apple 允许您创建 2 个内部应用程序,以便它们可以相互重叠,然后您可以使用它更新您的新应用程序。不要撤销它。您唯一可以撤销的是 App-Store 证书,而无需停止现有应用程序。
    • 严格来说,你不能更新证书,你必须生成新的 - 见developer.apple.com/library/ios/#documentation/IDEs/Conceptual/…
    • 自上次编辑此答案以来,有些事情发生了变化。现在过期的证书不会从列表中消失;它们显示为“已过期”。撤销现有分发证书会将其从列表中删除,您不会获得请求新证书的按钮。
    【解决方案6】:

    这是一个非常有用的帖子,我按照@junjie 提到的相同步骤进行操作,但对我来说发生了一些奇怪的事情,以下是我执行的步骤。

    1. 前往开发者门户并吊销即将到期的证书。
    2. 去了 XCode6.4,在账户设置中,证书仍然显示有效,我疯了。
    3. 然后我打开 XCode7,证书显示为带有 "Reset" 按钮而不是创建按钮,我点击了重置按钮,后来在门户中我能够看到扩展证书存在。这就是 Apple 所说的重置按钮

    如果 Xcode 检测到签名身份存在问题,它会显示 帐户首选项中的适当操作。如果 Xcode 显示 Create 按钮,签名身份不存在于会员中心或您的 苹果。如果 Xcode 显示一个重置按钮,则签名身份不是 可在您的 Mac 上使用 - 例如,它缺少私钥。如果你 点击Reset按钮,Xcode撤销并请求相应的 证书。

    1. 我尝试用它创建一个 Appstore ipa,只是为了进行测试,它运行良好,所以我得救了,但仍然不确定发生了什么。可能是我在我的 Mac 中配置了多个帐户,不知道。

    【讨论】:

      猜你喜欢
      • 2016-09-27
      • 1970-01-01
      • 2018-02-15
      • 2012-08-13
      • 2021-01-27
      • 1970-01-01
      • 2020-01-14
      • 1970-01-01
      相关资源
      最近更新 更多