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

465

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

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

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

Аамир
источник
3
отметьте это stackoverflow.com/a/35406327/5512225
Avaan
52
Примечание для людей, голосующих за закрытие: это на тропике, потому что речь идет об ИНСТРУМЕНТЕ, который используют ПРОГРАММИСТЫ.
Ян Рингроз
Читатели должны заметить, что эта проблема не характерна для Push-сервисов, но встречается в равной степени для устаревших сертификатов iOS и Mac для разработчиков и распространителей. (Решения работают одинаково хорошо для них.)
Дэвид
Поздравляю с наиболее актуальным вопросом, этот вопрос связан со стандартным инструментом CI для fastlane для iOS на этапе загрузки идентификаторов подписи кода под названием Match.
Саджон

Ответы:

621

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

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

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

AcidicSkittles
источник
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

mishimay
источник
Удаление устаревшего сертификата 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.

technerd
источник
нужно убедиться, что его действительно удаляют .. сейчас работает. Спасибо.
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.

Ссылка:

MilanPanchal
источник
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 .

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

Ahsan
источник
16

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

Виталий Усау
источник
Как вы сказали, это не решение проблемы. Но это все еще интересно, поэтому я не буду понижать голос.
Мартин
6
  • Все мои сертификаты установлены и срок годности в порядке.
  • Я удалил и переустановил все свои сертификаты, все равно не повезло

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

Дэвид Бертран
источник