Правильный способ продлить сертификат распределения для прошивки

Обновить

November 2018

Просмотры

96k раз

236

Мой сертификат распределения истекает 7 июня, вместе со всеми моими провизиями файлов. Как правильно обновить его? Должен ли я отменить его сейчас и запросить новый? Если бы я сделать это, чем будут все мои живые приложения будут снесены?

4 ответы

284

When your certificate expires, it simply disappears from the ‘Certificates, Identifier & Profiles’ section of Member Center. There is no ‘Renew’ button that allows you to renew your certificate. You can revoke a certificate and generate a new one before it expires. Or you can wait for it to expire and disappear, then generate a new certificate. In Apple's App Distribution Guide:

Replacing Expired Certificates

When your development or distribution certificate expires, remove it and request a new certificate in Xcode.

When your certificate expires or is revoked, any provisioning profile that made use of the expired/revoked certificate will be reflected as ‘Invalid’. You cannot build and sign any app using these invalid provisioning profiles. As you can imagine, I'd rather revoke and regenerate a certificate before it expires.

Q: If I do that then will all my live apps be taken down?

Apps that are already on the App Store continue to function fine. Again, in Apple's App Distribution Guide:

Important: Re-creating your development or distribution certificates doesn’t affect apps that you’ve submitted to the store nor does it affect your ability to update them.

So…

Q: How to I properly renew it?

As mentioned above, there is no renewing of certificates. Follow the steps below to revoke and regenerate a new certificate, along with the affected provisioning profiles. The instructions have been updated for Xcode 8.3 and Xcode 9.

Step 1: Revoke the expiring certificate

Login to Member Center > Certificates, Identifiers & Profiles, select the expiring certificate. Take note of the expiry date of the certificate, and click the ‘Revoke’ button.

Выберите истекающий сертификат и нажмите кнопку Отозвать

Step 2: (Optional) Remove the revoked certificate from your Keychain

Optionally, if you don't want to have the revoked certificate lying around in your system, you can delete them from your system. Unfortunately, the ‘Delete Certificate’ function in Xcode > Preferences > Accounts > [Apple ID] > Manage Certificates… seems to be always disabled, so we have to delete them manually using Keychain Access.app (/Applications/Utilities/Keychain Access.app).

При необходимости удалить аннулированные сертификаты с помощью брелока Access.app

Filter by ‘login’ Keychains and ‘Certificates’ Category. Locate the certificate that you've just revoked in Step 1.

Depending on the certificate that you've just revoked, search for either ‘Mac’ or ‘iPhone’. Mac App Store distribution certificates begin with “3rd Party Mac Developer”, and iOS App Store distribution certificates begin with “iPhone Distribution”.

You can locate the revoked certificate based on the team name, the type of certificate (Mac or iOS) and the expiry date of the certificate you've noted down in Step 1.

Step 3: Request a new certificate using Xcode

Under Xcode > Preferences > Accounts > [Apple ID] > Manage Certificates…, click on the ‘+’ button on the lower left, and select the same type of certificate that you've just revoked to let Xcode request a new one for you.

Пусть Xcode запросить новый сертификат для вас в Xcode> Preferences> Учетные записи> идентификатор Apple> Управление сертификатами ...

Step 4: Update your provisioning profiles to use the new certificate

After which, head back to Member Center > Certificates, Identifiers & Profiles > Provisioning Profiles > All. You'll notice that any provisioning profile that made use of the revoked certificate is now reflected as ‘Invalid’.

Обратите внимание на то, что любой профиль обеспечения, который сделал использование аннулированного сертификата теперь отражаются как «Invalid»

Click on any profile that are now ‘Invalid’, click ‘Edit’, then choose the newly created certificate, then click on ‘Generate’. Repeat this until all provisioning profiles are regenerated with the new certificate.

Выберите только что созданный сертификат и нажмите Generate

Step 5: Use Xcode to download the new provisioning profiles

Tip: Before you download the new profiles using Xcode, you may want to clear any existing and possibly invalid provisioning profiles from your Mac. You can do so by removing all the profiles from ~/Library/MobileDevice/Provisioning Profiles

Back in Xcode > Preferences > Accounts > [Apple ID], click on the ‘Download All Profiles’ button to ask Xcode to download all the provisioning profiles from your developer account.

Нажмите Загрузить все профили для Xcode, чтобы загрузить все вновь созданные профили

0

Это было действительно полезной нитью, я последовал за те же действия, @junjie упоминается, но для меня что-то странное произошло, ниже шаги, которые я сделал.

  1. Пошел портал разработчиков и аннулирован сертификат, который был истекает.
  2. Пошел в XCode6.4 и в настройках учетной записи, сертификат еще показал действительно, я сошел с ума.
  3. Тогда я открыл XCode7, там сертификат был показан с «Reset» кнопка вместо создания , и я нажал на кнопку сброса , а затем на портале я смог увидеть расширенный подарок сертификата. Это то , что Apple , говорит о кнопке Reset

Если Xcode обнаруживает проблему с идентичностью подписания, он отображает соответствующее действие в настройках счетов. Если Xcode отображает кнопку Создать, идентичность подписи не существует в центре члена или на вашем Mac. Если Xcode отображает кнопку сброса, тождественная подпись не может использоваться на ваш Mac, например, он отсутствует закрытый ключ. При нажатии на кнопку сброса, Xcode аннулирует и запрашивает соответствующий сертификат.

  1. Я попытался создания ИПС Appstore с этим, просто чтобы проверить, и она работала отлично, так что я спасен, но до сих пор не уверен, что произошло. Может быть, я имел несколько учетных записей, настроенных в моем Mac, не знаю.
278

Ваши живые приложения не будут снесены. Ничего не случится что-нибудь, что это жить в App Store.

После того, как они формально истекает, единственное, что будет затронута ваша способность подписать код (и, таким образом, сделать новые версии и предоставлять обновления).

Что касается сертификата распределения, когда он истекает, он просто исчезает из раздела «Сертификатов, идентификатор & Profiles» Центр членов. Если вы хотите обновить его до истечения срока действия, отменить текущий сертификат и вы получите кнопку, чтобы запросить новый.

Что касается профиля обеспечения, не беспокойтесь об этом до истечения срока, просто продолжайте использовать его. Это достаточно легко просто обновить его, когда он истекает.

Спокойствие, что ничего не случится с вашим живым приложением в магазине.

6

Очень просто было обновить свой сертификат. Перейти к своему центру проявителя и перейдите на Provisioning профиль и посмотреть, что являются свидетельством активного и неактивным и выберите Неактивный сертификат и нажмите кнопку Изменить а затем нажмите кнопку генерировать. Теперь ваш сертификат успешное обновление еще в течение 1 года. Спасибо