Этот сертификат имеет недействительный эмитент Apple Push Services


465

Я создал сертификат для включения служб Push в своем приложении, но каждый раз, когда я пытаюсь добавить сертификат в свою цепочку для ключей, после добавления сертификата он показывает следующую ошибку:

Этот сертификат имеет недействительный эмитент

введите описание изображения здесь



3
отметьте это stackoverflow.com/a/35406327/5512225
— Avaan

52
Примечание для людей, голосующих за закрытие: это на тропике, потому что речь идет об ИНСТРУМЕНТЕ, который используют ПРОГРАММИСТЫ.
— Ян Рингроз

Читатели должны заметить, что эта проблема не характерна для Push-сервисов, но встречается в равной степени для устаревших сертификатов iOS и Mac для разработчиков и распространителей. (Решения работают одинаково хорошо для них.)
— Дэвид

Поздравляю с наиболее актуальным вопросом, этот вопрос связан со стандартным инструментом CI для fastlane для iOS на этапе загрузки идентификаторов подписи кода под названием Match.
— Саджон

Ответы:


621

Я думаю, что я понял это. Я импортировал новый сертификат WWDR, ​​срок действия которого истекает в 2023 году , но у меня все еще возникали проблемы со сборкой, и в моих сертификатах разработчика все еще отображалась ошибка недействительного издателя.

  • В доступе цепочки для ключей перейдите, чтобы Посмотреть -> Показать Истекшие Сертификаты . Затем в вашей цепочке для ключей входа в систему выделите устаревший сертификат WWDR и удалите его.
  • У меня также был тот же сертификат с истекшим сроком действия в моей системной цепочке для ключей, поэтому я тоже удалил его (важно).

После удаления сертификата с истекшим сроком действия из цепочек ключей входа в систему и системы я снова смог собрать дистрибутив.


5
Большое спасибо. Это сработало и для меня. Важно удалить просроченный сертификат как из логина, так и из системной цепочки для ключей.
— dfmuir

37
Следовал предыдущему совету удалить на основании «Показать устаревшие сертификаты», но только выполнил вход. Также удаление из системы сделало свое дело.
— markdwhite

13
обратите внимание, что вам также необходимо удалить его из системы
— Soufiane.ess

5
Для меня у меня уже был новый сертификат (срок действия которого истекает в 2023 году), но у меня также был старый, срок действия которого истек. Оба были в моей Системной цепочке для ключей. После того, как я удалил старый сертификат, я смог создать его, используя свой сертификат распространения.
— CoBrA2168

5
Удаление устаревшего сертификата из системы является наиболее важным.
— Нитиш

256
  1. Загрузите https://developer.apple.com/certificationauthority/AppleWWDRCA.cer и дважды щелкните, чтобы установить его в связку ключей.
  2. Выберите «Просмотр» -> «Показать устаревшие сертификаты» в приложении связки ключей.
  3. Подтвердите, что выбрана категория «Сертификаты».

    введите описание изображения здесь

  4. Удалите устаревшие сертификаты Apple Worldwide Developer Relations Certificate Authority со вкладки «логин» и «Система».


Вот ответ Apple.

Спасибо за то, что вы обратили на это внимание сообщества и приносим извинения за проблемы, с которыми вы столкнулись. Эта проблема связана с наличием копии просроченного промежуточного сертификата WWDR в цепочках ключей вашей системы и входа в систему. Чтобы решить эту проблему, вы должны сначала загрузить и установить новый промежуточный сертификат WWDR (дважды щелкнув по файлу). Далее в приложении Keychain Access выберите Системную цепочку для ключей. Убедитесь, что в меню «Вид» выбрано «Показать сертификаты с истекшим сроком действия», а затем удалите просроченную версию промежуточного сертификата центра сертификации по связям с разработчиками Apple (срок действия которого истек 14 февраля 2016 г.). Ваши сертификаты должны теперь появиться как действительные в Доступе Цепочки для ключей и быть доступными для XCode для представлений в Магазин приложений.

https://forums.developer.apple.com/thread/37208


Удаление устаревшего сертификата Apple Worldwide Developer из цепочки для ключей только помогает, но иногда цепочка для ключей не показывает, что вы завершили и откройте цепочку для ключей, затем выполните поиск Apple Worldwide Developer снова и убедитесь, что вы выбираете Allkeys. Чтобы исправить это, потребовалось немало времени, поскольку после многих удалений сертификат Apple Worldwide Developer истек.
— ашиш

Нужно ли мне экспортировать сертификат службы Apple push заново после выполнения этих действий и загрузить их на мой сервер? внезапно push-уведомления не работают.
— Азик Абдулла

Я застрял в той части, где я должен был удалить старый сертификат - я не смог этого сделать из-за ошибки разрешений UNIX - и этот поток просто спас мне жизнь: stackoverflow.com/questions/35511314/…
— o.shnn

156

Это на самом деле не проблема развития. Это происходит в связи с истечением срока действия промежуточного сертификата Apple Worldwide Developer Relations промежуточного звена, выданного Apple Worldwide Certificate Authority . WWDRCA выдает сертификат для подписи вашего программного обеспечения для устройств Apple, что позволяет нашим системам подтверждать, что ваше программное обеспечение доставлено пользователям по назначению и не было изменено.

Чтобы решить эту проблему, вы должны выполнить следующие шаги:

  1. Открытый доступ к брелку
  2. Перейти к просмотру -> Показать просроченные сертификаты

Введите описание изображения здесь

  1. Перейти к системе в связке ключей Введите описание изображения здесь

  2. Здесь вы обнаружите, что «Центр сертификации Apple по связям с разработчиками» помечен как просроченный. Так что удали это. Также проверьте под вкладкой входа и удалите просроченный WWDRCA.

  3. Загрузите новый промежуточный сертификат WWDR отсюда (срок действия возобновленного промежуточного сертификата сертификации по связям с разработчиками Apple истекает 7 февраля 2023 года).

  4. Установите его, дважды щелкнув по нему.

Если у вас по-прежнему возникают проблемы с приложениями для iOS, приложениями Mac, расширениями Safari, push-уведомлениями Apple Wallet и Safari, перейдите по этой ссылке с истечением срока действия .

Промежуточный сертификат сертификации по связям с разработчиками Apple Worldwide скоро истекает, и мы выпустили обновленный сертификат, который должен быть включен при подписании всех новых проходов Apple Wallet, push-пакетов для push-уведомлений Safari и расширений Safari начиная с 14 февраля 2016 года.

Хотя большинство разработчиков и пользователей не будут затронуты изменением сертификата, мы рекомендуем всем разработчикам загрузить и установить обновленный сертификат на свои системы разработки и серверы в качестве передового опыта. Все приложения останутся доступными в App Store для iOS, Mac и Apple TV.


нужно убедиться, что его действительно удаляют .. сейчас работает. Спасибо.
— preetam

Забавно. У меня тоже были проблемы с этим сертификатом, но по-другому
— CocoaBean

2
Я застрял, пытаясь удалить старый сертификат - не смог сделать это из-за ошибки разрешений UNIX - и этот поток просто спас мне жизнь: stackoverflow.com/questions/35511314/…
— o.shnn

101

Вот как мы это исправили.

Шаг 1. Откройте доступ к связке ключей, удалите «Всемирный центр сертификации по связям с разработчиками Apple» (срок действия которого истекает 14 февраля 2016 г.) в разделах « Вход » и « Система ». Если вы не можете найти его, используйте «Показать устаревшие сертификаты» в меню «Вид».

Шаг 2: Загрузите это и добавить его в брелок доступа -> Сертификаты (срок действия которого истекает 8 февраля 2023 года).

Шаг 3: Все должно вернуться к нормальной жизни и работать сейчас.

Ссылка: Apple Worldwide Developer Relations Срок действия промежуточного сертификата


1
Я застрял там, где должен был удалить старый сертификат - не смог сделать это из-за ошибки разрешений UNIX - и этот поток просто спас мне жизнь: stackoverflow.com/questions/35511314/…
— o.shnn

1
Спасибо, это сработало отлично. Перед удалением этого сертификата у меня были кнопки «Сброс» в учетных записях XCode рядом с моими подписывающими удостоверениями, но нажатие на них ничего не делало. После удаления устаревшего сертификата «Всемирный центр сертификации по связям с разработчиками Apple» я смог нажать «Сброс» для каждого элемента в XCode, и он очистил его (кнопка «Сброс» исчезла). На заметку ... Боже, Эппл, ты не можешь заставить этот материал работать лучше? Клянусь, десятки тысяч часов времени разработчиков были потрачены впустую из-за этих безумных проблем с сертификатом / профилем / подписью ... просто заставьте это работать !!
— Бен Шталь

37

На портале Apple для разработчиков добавьте новый сертификат и на вопрос «Какой тип сертификата вам нужен?» выберите «Всемирный сертификат отношений с разработчиками». Сгенерируйте новый сертификат, скачайте и установите. В тот момент, когда вы это сделаете, вы больше не увидите сообщение, которое вы описали.

Изменить
. Сертификат можно загрузить со следующей страницы: https://www.apple.com/certificateauthority/. Вы можете выбрать один из следующих двух сертификатов: «Сертификат WWDR (истекает 02/07/23)» или «Сертификат WWDR». (Истекает 14.02.16)


1
при добавлении нового сертификата такая опция не появляется
— Aamir

8
скачал и установил новый сертификат, но все еще с той же проблемой - что еще нужно сделать?
— Мистер Цорн

@MrZorn У меня та же проблема, но, к вашему сведению, я пытался экспортировать p12, и все равно работало.
— superarts.org

4
@MrZorn U нужно перейти View -> show expried -> del the old WWDR cert
— Tj3n

32

Выполните следующие шаги:

  1. Скачать и установить отсюда . Дважды щелкните и установите его.
  2. Выберите «Просмотр» -> «Показать устаревшие сертификаты» в приложении связки ключей.
  3. Удалите сертификаты Apple Worldwide Developer Relations Certificate Authority со вкладки «логин» и «Система» в приложении «Связка ключей».

Если вы не нашли свой сертификат WWDR на вкладке « Вход в систему» или « Система », выберите категорию « Все элементы » слева. Скорее всего, вы увидите здесь просроченный сертификат WWDR и можете его удалить. Сертификат с истекшим сроком действия всегда отображается красной звездочкой.


28

Если вы сталкиваетесь с ошибкой «Этот сертификат имеет недействительный издатель» для всех ваших сертификатов, выполните следующие действия.

шаги:

  • Откройте брелок и нажмите «Войти» -> «Все элементы» на левой панели.
  • Теперь нажмите View -> Show Expired Certificates в верхнем меню навигации.
  • Теперь найдите «Apple Worldwide Certification Authority» и удалите устаревшие сертификаты.
  • После удаления просроченных сертификатов перейдите по следующему URL-адресу и загрузите новый сертификат https://developer.apple.com/certificationauthority/AppleWWDRCA.cer .
  • Дважды щелкните по недавно загруженному сертификату и установите его в свою цепочку для ключей.
  • Двойная проверка: список сертификатов с истекшим сроком действия, выполнив шаг № 3.
  • Теперь у вас есть действующий «Apple Worldwide Certification Authority», срок действия которого истекает 2023-02-07.

Ссылка:


23

Как описано в документе « Срок действия промежуточного сертификата об отношениях между разработчиками Apple» :


Срок действия предыдущего промежуточного сертификата сертификации по связям с разработчиками Apple истек 14 февраля 2016 г. и теперь необходимо использовать обновленный сертификат при подписании пропусков Apple Wallet, push-пакетов для push-уведомлений Safari, расширений Safari и отправки в App Store, Mac App Store, и магазин приложений для Apple TV.

Все разработчики должны загрузить и установить обновленный сертификат на свои системы разработки и серверы. Все приложения останутся доступными в App Store для iOS, Mac и Apple TV.


Новый действительный сертификат будет выглядеть следующим образом:

Всемирный центр сертификации отношений с разработчиками Apple

Он будет отображаться (этот сертификат действителен) с зеленой меткой.

Итак, зайдите в свой брелок доступа . Просто удалите старый сертификат и замените его новым ( обновленный сертификат ), как описано в документе Apple. В основном проблема заключается только в службе push-уведомлений Apple и расширениях, как описано в документе Apple.

Вы также можете проверить список сертификатов в https://www.apple.com/certificateauthority/

Список отзыва сертификатов:

Список отзыва сертификатов

Срок действия этого обновленного сертификата истекает 2023-02-08.


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

Показать просроченные сертификаты

Теперь вы можете увидеть следующий сертификат, который нужно удалить:

Удалить этот сертификат


20

Вам нужно найти мир в верхней правой панели поиска и удалить просроченный сертификат. Убедитесь, что вы выбрали Login и All items .

Введите описание изображения здесь


16

Просто попробуйте установить местную дату раньше, чем 14 февраля. У меня работает! Не полное решение, но временное решение проблемы.


Как вы сказали, это не решение проблемы. Но это все еще интересно, поэтому я не буду понижать голос.
— Мартин

6
  • Все мои сертификаты установлены и срок годности в порядке.
  • Я удалил и переустановил все свои сертификаты, все равно не повезло

В конце я щелкнул правой кнопкой мыши на сертификате и выбрал «Получить информацию». В разделе «Доверие» я выбрал «Всегда доверять», и это решило мою проблему.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.