Ошибка Xcode 7: «Отсутствует удостоверение подписи дистрибутива iOS для…»

837

Я пытался загрузить свое приложение в iTunes Connect соответственно. AppStore и получил следующую ошибку:

Не удалось найти или создать соответствующие подписывающие активы

Xcode попытался найти или сгенерировать соответствующие подписывающие активы и не смог сделать это из-за следующих проблем.

Отсутствует удостоверение подписи дистрибутива iOS для ... Xcode может запросить один для вас.

Прежде, чем я установил новую машину разработки, экспортировал учетные записи разработчика через Xcode 7 от старой до новой машины.

Что я могу сделать, чтобы это исправить?

Awsed
источник
Вам также необходимо иметь профиль распространения и сертификаты вместе с его ключами для создания IPA (даже с профилем разработчика)
Bhumit Mehta
1
С новым импортом импорта учетной записи разработчика Xcode 7 также экспортируются профили и сертификаты. В моем случае мне нужно было дополнительно передать сертификат «
Центр
1
@Awsed вы можете найти детали процесса для Сертификатов и Профиля в Документации Apple . Это было бы полезно.
Дипен Панчасара

Ответы:

1949

От Apple -

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

Как отмечено в комментарии ниже, просроченный сертификат также необходимо удалить из loginраздела:

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

Раджат Талвар
источник
63
Я думаю, что это был лучший ответ, потому что он включал инструкции по удалению просроченного сертификата. Весь этот вопрос - Cray Cray.
Чад Павлиска
12
Это случалось каждые два года; Многие приложения перестают работать на Mac, пока пользователь не перезапустит их Mac. Конечно, они будут винить вас. По крайней мере, новый сертификат не истекает до 2023 года.
Тибидабо
4
Спасибо, мой друг! Если он не работает: вы уверены, что добавили новый? Мне пришлось перезагрузить мой Mac и загрузить его снова, потому что мой Mac не хотел добавлять его. (Я знал это, потому что меня не просили ввести мой пароль ...)
Богоподобный
131
Ко всему, что не может заставить его работать, несмотря на инструкции ... Есть два истекших сертификата WWDR. Один находится в связке ключей входа, а другой - в Системе. Вы должны удалить их обоих , чтобы все заработало.
Алекс Н.
3
Убедитесь, что при переходе в «Доступ к связке ключей» зайдите в «Связки ключей»> «Система» и также удалите старые сертификаты. Мои подписи были аннулированы, пока я не сделал это.
wowzuzz
562

Я также столкнулся с той же проблемой сегодня. Следующие шаги исправили мою проблему.

  1. Загрузить https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
  2. Дважды щелкните, чтобы установить в связку ключей.
  3. Затем в связке ключей выберите «Просмотр» -> «Показать устаревшие сертификаты» в приложении связки ключей.
  4. В нем будут перечислены все просроченные сертификаты.
  5. Удалите «Apple Worldwide Developer Certificate Authority Certificates» на вкладке «Логин»
  6. А также удалите его из вкладки «Система».

Теперь вы готовы идти.

Avaan
источник
62
"6. А также удалите его из вкладки" Система "." шаг решил мою проблему. Это правильный ответ!!!
EFE
4
Я тоже! Я исправил удаление из вкладки «Система». Шаг
Эдвард Чанг
1
Я выполняю следующие действия, в том числе удаляю его из системы, однако каждый раз, когда я открываю компоновщик расширений (разработчика Safari), старый сертификат с истекшим сроком действия появляется снова. Любые идеи?
Андре
3
Эта проблема была решена следующим образом: «Если ваш сертификат недоступен в Safari Extension Builder, обновите свою систему подписи до бета-версии OS X El Capitan v10.11.4» на следующей странице: истечение срока действия сертификата
Andre
для тех, кто хочет знать, где можно найти сертификаты: Apple сертифицирована
Хорхе Касариего
41

Я продолжал сталкиваться с проблемой и видел, что все мои сертификаты были признаны недействительными - о нет!

Оказывается, я никогда не удалял просроченный сертификат. Он не показывался для меня, пока я не выбрал приложение Keychain Access:

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

тогда

Система-> Все товары

наконец-то отобразится тот самый недействительный сертификат. Удалите это и повторите попытку из XCode, чтобы получить новые действительные сертификаты.

Просто убедитесь, что вы ищете "Все элементы" в приложении Keychain Access. Недействительные сертификаты являются результатом указания на устаревший сертификат, который еще не был удален.

Зиад Элкурджи
источник
Показ истекших сертификатов, а затем удаление из системы решило это для меня.
Жюль
33

Ниже процесс решит проблему,

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

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

2. Теперь загрузите https://developer.apple.com/certificationauthority/AppleWWDRCA.cer и дважды щелкните сертификат, чтобы добавить его в сертификаты Keychain access> (срок действия которого истекает 8 февраля 2023 г.). Теперь действительный статус сертификатов должен стать зеленым, как показано ниже.

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

Один раз проверь статус.

Теджа Кумар Бетина
источник
2
Спасибо! Это «Если вы не можете найти его, используйте« Показать устаревшие сертификаты »в меню« Вид »». помог мне много!
SDW
почему на скриншоте есть обрезка ногтя?
FlavorScape
21

Apple внесла следующие изменения, поэтому загрузите новый сертификат developer.apple.com

Обновите сертификат и разместите его, как показано ниже на снимках экрана. В цепочке ключей, как показано ниже, снимки экрана нажмите на систему, а затем сертификат. Удалить просроченный сертификат. Затем перетащите файл AppleWWDRCA.cer, который вы загрузили сверху, по ссылке.

Срок действия сертификата промежуточного сертификата Apple по всему миру истек

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

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

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

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

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

Нишаль Хада
источник
12

После поисков я обнаружил, что недостаточно экспортировать учетные записи разработчиков из XCode и импортировать их на новую машину, снова через XCode.

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

Это решило проблему для меня.

Awsed
источник
10
Вы можете установить его, используя эту ссылку: developer.apple.com/certificationauthority/AppleWWDRCA.cer
ЕСВ
12

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

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

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

Ашиш Тхаккар
источник
4

Я удалил старую AppleWWDRCA, скачал и установил AppleWWDRCA , но проблема осталась. Я также проверил свои сертификаты распространения и разработки от Keychain Access, и вижу ниже ошибку;

"This certificate has an invalid issuer."

Затем,

  1. Я отозвал сертификаты разработки и распространения в Центре участников.
  2. Пересоздайте файл CSR и добавьте сертификаты разработки и распространения с нуля, загрузите их и установите.

Это исправленная проблема с сертификатом.

Поскольку старые сертификаты отозваны, существующие профили обеспечения становятся недействительными. Чтобы исправить это;

  1. На сайте участника открыты профили обеспечения.
  2. Открыл детали профиля, нажав «Редактировать», проверил сертификат из списка и нажал кнопку «Создать».
  3. Скачал и установил профили разработки и распространения.

Надеюсь, это поможет.

болван
источник
3

Мой ответ был другим и пришел с сообщением:

resource fork, Finder information, or similar detritus not allowed

Решение состояло в том, чтобы сделать сгенерированную графику:

Ошибка знака кода в macOS Sierra Xcode 8: недопустимая ветвь ресурса, информация об Finder или подобный детрит не допускаются

Гай Лоу
источник
Помог мне, спасибо! Была та же самая проблема, действительно связанная с генерируемой графикой и тем же сообщением об ошибке.
Даббелуг
1

Убедитесь, что в Project Navigator> Signing> Team необходимо указать название команды.

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

Анкит Гарг
источник