Подписание приложения iPhone: действительный идентификатор подписи, соответствующий этому профилю, не найден в вашей цепочке ключей
Я вытягиваю свои волосы из-за этого. Я только что загрузил iPhone 3.0 SDK
, но теперь я не могу заставить профили настройки работать. Вот что я пробовал:
- Удалить все профили подготовки
- Удалить логин-логин
- Создайте новый брелок для входа в систему, сделайте это
по умолчанию
- Создать новый запрос на подпись сертификата
- Создайте новый разработчик и дистрибутив
сертификаты в центре разработчиков Apple.
- Загрузите и установите их
- Загрузите сертификат WWDR и установите его
- Создайте новый профиль подготовки и
дважды щелкните его, чтобы установить
Все сертификаты сообщают как действительные, но Xcode
все равно не узнают их. Что мне делать дальше?
Edit:
Я полностью переустановил Mac OS X
и из новой установки установил 3.0 SDK
и все еще имею ту же проблему.
Ответы
Ответ 1
Была та же проблема вчера. Теперь, после подписания на портал разработчика, для каждого недопустимого профиля обеспечения есть кнопка "Обновить". После обновления и загрузки обновленного профиля подготовки все работает так, как ожидалось, поэтому проблема определенно решена:)
Обновление: вам может потребоваться связаться с Apple, чтобы получить кнопку "Обновить", или они удалили ее, - и решение должно просто загрузить ее и добавить в цепочку ключей, не нужно обновлять.
Ответ 2
У меня была та же проблема: я сначала загрузил свои сертификаты на свой маленький MacBook во время работы. При попытке установить сертификаты на моем iMac... я столкнулся с проблемами, описанными на этой странице.
Проведя часы, вытягивая мои волосы, как и многие из вас, я выполнил следующие шаги, чтобы исправить это:
-
Закройте все свои материалы, кроме своей веб-страницы, которые должны быть зарегистрированы в центре App Dev.
-
Откройте Xcode. Нажмите ОКНО > ОРГАНИЗАТОР. Затем перейдите на вкладку "Устройства" и выберите "Профили подготовки" слева.
Это должно привести к профилированию. Выделите один за другим (если больше 1), щелкните правой кнопкой мыши и удалите профиль. Да, просто сделай это! Удалите их все! (Я продолжал создавать новый после того, как новый попытался заставить эту работу работать.)
-
С первой страницы, которую вы видите после входа в Центр приложений Dev в правой части, нажмите "IOS PROVISIONING PORTAL" > (не "помощник запуска" ). Вместо этого нажмите на левую сторону. Выберите СЕРТИФИКАТЫ. Вероятно, у вас будет только одна строка с вашим именем/компанией - оттуда щелкните правой кнопкой REVOKE. Нажмите "ОК", чтобы подтвердить, что вы хотите сделать.
-
На той же странице нажмите "УСТРОЙСТВА". Нажмите на поле рядом с устройством, которое вы пытаетесь установить, и нажмите "СНЯТЬ ИЗБРАННОЕ". Снова нажмите OK, чтобы подтвердить.
-
Подождите около 2 минут, чтобы Apple сделала свою работу.
-
Теперь нажмите "HOME", который находится в левой части навигации.
-
Нажмите "Помощник запуска"
-
создайте новый идентификатор приложения - вызовите его, как хотите. Просто убедитесь, что он достаточно уникален, чтобы знать, что тот, который вы только что создали, потому что другие, с которыми вы все время возились со всем днем, не будут удалены из Центра Apples Dev.
-
Вы можете быть в состоянии следить за остальной частью Помощника без проблем - главное, вам просто нужно было удалить свои старые профили предоставления и начать все заново.
Удачи!
Ответ 3
Я столкнулся с той же проблемой. Это связано с тем, что закрытый ключ сертификата не существует на вашем компьютере.
-
Если вы используете новый компьютер и загружаете сертификат с веб-сайта:
Вы можете экспортировать сертификат со старого компьютера, а затем импортировать его на новый компьютер.
-
Если вы делитесь учетной записью разработчика с кем-то:
Вы просите владельца учетной записи отправить вам приглашение и стать членом этой учетной записи. Затем вы можете создать свой собственный сертификат с нуля.
-
Если вы не хотите обрабатывать все эти sh * t:
Просто отмените сертификат на веб-сайте и удалите копию на своем локальном компьютере. Затем запросите новый. Это должен быть конечный способ решения такой проблемы.
Ответ 4
Я обнаружил, что мне нужно перетащить файл distribution_identity.cer, который я загрузил с страницы "Сертификаты → Распространение" на портале программы разработчика в программу доступа к keychain, после чего эта ошибка исчезла.
Ответ 5
Я решил его
a) перейдите на страницу профиля подготовки на портале
b) Нажмите "Изменить" в профиле подготовки, с которым вы столкнулись (справа).
c) Проверьте соответствующий блок сертификата (не проверен по умолчанию) и выберите правильный идентификатор приложения (мой старый был истек)
d) Загрузите и используйте новый профиль подготовки. Удалить старый (ы).
По-видимому существует 4 разных причины этой проблемы:
- В вашей цепочке ключей отсутствует секретный ключ, связанный с вашим Разработчик iPhone или iPhone Сертификат распространения.
- В вашей цепочке ключей отсутствуют отношения с разработчиками Apple по всему миру Промежуточный сертификат.
- Ваш сертификат был отозван или истек.
- Протокол состояния сертификатов (OCSP) или сертификат Список отзыва (CRL) включается в Настройки доступа к брелокам
.
Ответ 6
После тщательного прохождения темы и проверки всех решений, предлагаемых людьми, я могу с уверенностью утверждать это, следуя шагам, указанным в документах разработчика Apple для создания файлов CSR и мобильного обеспечения, просто сделайте это!,
- Запустить Xcode.
- Выберите окно- > Организатор
- Нажмите эту кнопку обновления, и эта грязная желтая полоска будет немедленно удалена.
http://img.skitch.com/20100820-1ngm8an14c6fm3dt7g6j51d2nx.jpg
Поверьте мне, вам нужно только сделать это. Нет необходимости повторять процесс снова и снова, чтобы убедиться, что вы делаете это правильно. Просто нажмите "Обновить", введите свои учетные данные и сделайте это.
Ответ 7
Для меня это работало только тогда, когда сертификат и оба ключа находились в цепочке ключей входа. Раньше я создал брелок для разработки, но организатор Xcode не нашел ключей там. Поэтому я переместил их обратно в Login, оставил инструмент для ключей и voila, ошибка в Xcode Organizer ушла! Это было на Snow Leopard 10.6.2 с 3.1.3 SDK.
Ответ 8
Для сертификатов разработки вы можете просто создать новый и сопоставить его с профилем. Однако для распространения, например, когда вы отправляетесь в Apple, вы не можете этого сделать и должны использовать сертификат распространения, созданный агентом группы. Проблема в том, что вам нужен секретный ключ на вашем компьютере. Однако очень просто для агента команды, который создал сертификат для копирования секретного ключа, ниже приведены инструкции от Apple, я надеюсь, что это поможет.
Очень важно, чтобы вы сохранили секретный ключ в безопасном месте в случае, если вам необходимо разработать на нескольких компьютерах или решить переустановить системную ОС. Без вашего закрытого ключа вы не сможете подписать двоичные файлы в Xcode и протестировать приложение на любом устройстве Apple. Когда создается CSR, приложение Keychain Access создает закрытый ключ в вашей логин-цепочке. Этот закрытый ключ привязан к вашей учетной записи пользователя и не может быть воспроизведен в случае потери из-за переустановки ОС. Если вы планируете разрабатывать и тестировать несколько систем, вам нужно будет импортировать свой закрытый ключ на все системы, над которыми вы будете работать.
- Чтобы экспортировать свой секретный ключ и сертификат для обеспечения безопасности и для включения разработки в нескольких системах, откройте приложение Keychain Access Application и выберите категорию "Keys".
- Control. Нажмите на закрытый ключ, связанный с сертификатом разработки iPhone, и нажмите "Экспортировать элементы в меню". Частный ключ идентифицируется с помощью iPhone Developer: общедоступного сертификата, который сопряжен с ним.
- Сохраните свой ключ в формате файла личной информации (.p12).
- Вам будет предложено создать пароль, который будет использоваться при попытке импортировать этот ключ на другом компьютере.
- Теперь вы можете перенести этот файл .p12 между системами. Дважды нажмите на .p12, чтобы установить его в систему. Вам будет предложено ввести пароль, введенный на шаге 4.
Ответ 9
Лучший ответ, который я получил, - это экспорт вашего ключа, а не просто попытка импортировать файл сертификата.
Когда вы экспортируете ключ из связки ключей, сгенерировавшей запрос, вы получаете файл Certificates.p12, в котором необходимо скопировать нужные вам ключи.
Затем импортируйте это на новый компьютер.
С подобными ключами, вероятно, полезно сохранить свернутый файл пакета сертификатов, потому что много раз "открытый" ключ или файл сертификата недостаточно для восстановления.
Ответ 10
Вы пытались перезагрузить свой Mac и ваше устройство? Хромой ответ, но я всегда стараюсь это первым.
Ответ 11
В моем случае я скопировал проект с моего iMac на свой Macbook Pro и выяснил, что у меня не было моего закрытого ключа, установленного на Macbook. Поэтому я экспортировал свой закрытый ключ, скопировал и установил его в Macbook, и он работает! Я документировал информацию здесь:
http://www.creatistblog.com/2009/09/iphone-developer-provisioning.html
Ответ 12
Просто заметка с Xcode 4: в организаторе на левой панели находятся два разных раздела:
Я всегда ставил свои профили подготовки в 2. и даже после очистки и правильной установки он не работал. Затем я обнаружил 1. и, наконец, нашел кнопку обновления. Если вы выберите "Автоматическое предоставление устройств" в 1. и нажмите "Обновить", все будет проверено (желтое предупреждение в 2. больше).
Ответ 13
Я получил работу после повторного выполнения всего, а затем создал пустой проект с XCode и построил/запустил его на устройство. XCode показал окно с вопросом: хотите ли вы принять сертификат разработчика. Я нажал "Всегда". Только после этого шага я избавился от сообщения "Действительный идентификатор подписи, соответствующий этому профилю, не найден в вашей цепочке ключей" в Organizer.
Ответ 14
Эй, ребята, вчера у меня были проблемы с этим. Несколько раз я проходил весь процесс, запрашивая новый запрос сертификата у администратора с ассистентом, очищая все на портале, загружая сертификат, создавая новый профиль и загружая все. Нет кубиков.
Однако проверьте это.
Сначала очистите все сертификаты на портале, чтобы начать новый.
После создания нового запроса сертификата с помощником нажмите "Показать в Finder" и дважды щелкните этого плохого мальчика. Вы должны получить всплывающее окно для Ассистента сертификатов на экране с указанием "Пожалуйста, укажите выдающий центр сертификации" и т.д. Если вы этого не сделаете, просто закройте его и дважды щелкните дважды.
Теперь просто перейдите в диалог, выбрав
"Запросить сертификат из существующего ЦС" - Продолжить
Запрос "Сохранено на диск" - Продолжить
Сохраните его, когда захотите, даже переопределите файл.
В конце вы увидите волшебную "Создать пару ключей"
Перейдите к доступу KeyChain, и вы увидите там свои ключи! Загрузите этот сертификат на портал Apple, а затем пройдите через их мастер, как обычно, теперь все должно отлично работать.
Ответ 15
Существует два разных сертификата для двух разных профилей подготовки (разработка и распространение). Вы должны установить сертификаты BOTH в цепочке ключей. На портале программ для разработчиков iPhone:
Сертификаты → Разработка → Загрузить
Сертификаты → Распространение → Загрузить
Дважды щелкните оба сертификата. После этого оба сертификата должны появиться в Keychain.
Ответ 16
Ответ заключается в том, что отмените свой текущий сертификат развития и создайте новый. следуйте инструкциям на сайте яблок о том, как это сделать. Это так просто!! У меня была эта точная проблема.
Ответ 17
Простые шаги для этого:
- Начните с keychain (который уже содержит ваш ключ разработчика) на вашем компьютере и создайте запрос на сертификат. Загрузите запрос на сайт dev и создайте сертификат.
- Создайте профиль, используя сертификат.
- Загрузите профиль и отпустите его на Xcode.
Теперь все точки связаны, и они должны работать. Это работает как для dev, так и для распространения.
Ответ 18
Я зашел в аккаунт разработчика и отозвал сертификат разработки. После отзыва и загрузки сертификата разработки я дважды щелкнул недавно загруженный сертификат, и на этот раз Private Key находился под сертификатом разработки в KeyChain Access.
Ответ 19
Хороший способ убедиться, что это происходит чисто, - сначала очистить свой логин.
Кроме того, действительно важным шагом является разблокировать вашу цепочку ключей, прежде чем импортировать закрытый ключ и открытый ключ
security unlock-keychain -p password ~/Library/Keychains/login.keychain
Ввести закрытый ключ в логин-логин:
security import PrivateKey.p12 -k ~/Library/Keychains/login.keychain
1 импортировано.
Импортировать открытый ключ в логин-логин:
security import PublicKeyName.pem -k ~/Library/Keychains/login.keychain
1 импортированный ключ.
Ответ 20
"Это была ошибка на сайте портала Apple. В профиле обеспечения отсутствовали необходимые поля. Они исправили эту ошибку поздно 6/16/09."
Ответ 21
У меня была одна и та же проблема и все испробовалось. По какой-то причине решение заключалось в том, что все мои сертификаты были перенесены в цепочку ключей, называемую "microsoft_intermediate_certificates". Поскольку это, вероятно, произошло во время обновления Xcode, я совершенно не понимаю, почему, но это может помочь кому-то.
Я переместил все содержимое ключевого слова Microsoft в логин-логин, и все вернулось к нормальному.
Ответ 22
Наконец-то я получил это, чтобы работать после 4 подобных попыток после возникновения той же самой проблемы, которая была первоначально отправлена. Итак, вот что случилось, я не уверен, что это старая проблема (2009-07-09), но я буду публиковать в любом случае, если она вам полезна. Что сработало для меня... может сработать для вас...
- заново запустите и удалите старые ключи, открытые ключи и сертификаты в цепочке ключей
- пройти весь процесс, запросить сертификат из центра сертификации, получить новый открытый ключ, новый закрытый ключ и новый сертификат. Примечание: когда он работал, у меня был только один закрытый ключ, один открытый ключ и один сертификат.
- Создайте новый профиль подготовки (который использует только что сделанный сертификат) и поместите его в окно вашего организатора в Xcode. Удалите все старые BS.
- Запустите его.
Надеюсь, это поможет.
Ответ 23
У меня была такая же проблема, но это было связано с настройкой "FileVault" на моем Mac. Я зашел в свой брелок и установил "login", чтобы быть моим дефолтом и исправил его.
Ответ 24
Что вам нужно:
1) Закрытый и открытый ключ.
У них есть этот символ в вашей цепочке ключей:
alt text http://pici.se/pictures/IbNdRGuoy.png
2) Сертификат, сделанный из запроса на подпись этих ключей
3) Профиль подготовки, связанный с этим сертификатом
Предположим, вы сменили компьютеры и хотите снова настроить Xcode с профилями подготовки. Как вы это делаете?
- Откройте Xcode, нажмите ctrl + O, чтобы открыть Организатор, и удалите все профили подготовки, которые вы, возможно, уже установили.
- Откройте доступ к keychain и создайте запрос подписи, который вы сохраняете в файл (при создании запроса в вашей цепочке ключей создается закрытый и открытый ключ).
- Создайте/обновите сертификат в портале подготовки ресурсов, отправив apple этот запрос на подпись
- Загрузите и установите новый сертификат.
- Отмените профили подготовки и обновите их новым сертификатом.
- Загрузите и установите обновленные профили подготовки.
Ответ 25
Все здесь очень ошибаются. Все, что вам нужно, это выполнить шаги, которые Apple предоставляет в Управление вашими цифровыми идентификаторами.
Он инструктирует вас экспортировать сертификаты через Xcode и reimport через Xcode. Он отлично работает, но убедитесь, что ваше имя пользователя одно и то же на обоих компьютерах, или оно не получится.
Ответ 26
Я просто потратил несколько часов на этот вопрос fershlugginer, который появился после обновления моей лицензии на разработку. Повторяю, все работало без сучка и задоринки, тогда (спасибо, Яблоко!) Все это испортилось и оставалось испорченным. Ни один из официальных шагов по устранению неполадок Apple (связанных выше) или возможных шагов разрешения, упомянутых здесь, не разрешил мне проблему.
Что в конечном итоге для меня было для удаления как моих сертификатов разработки, так и распространения, отозвать их на портале инициализации, а затем разрешить Xcode АВТОМАТИЧЕСКИ обновлять/выпускать их. Ничто другое, в любом порядке, не могло получить оба необходимых сертификата в моей цепочке ключей с правильно прикрепленным личным ключом.
Ответ 27
Я не знаю, действительно ли они пропустили его или мои глаза просто застекляли, но....
На всякий случай кто-то другой не обращает внимания на то, что я сделал....
так же, как при разработке и тестировании...
1) Вам необходимо РАСПРЕДЕЛЕНИЕ < СЕРТИФИКАТ → 2) Вам необходимо РАСПРЕДЕЛЕНИЕ < ПРОФИЛИРУЮЩИЙ ПРОФИЛЬ →
Это ДВА ШАГА на портале, чтобы получить подписанную вещь.
Там я был, создав разработчика CERTIFICATE и скопировав его в папку "Мобильные условия", задаваясь вопросом, почему это не сработало.
Как только у меня был профиль обеспечения на месте
* BINGO *
Ответ 28
Вот что я сделал.
- Убедитесь, что ваши сертификаты не истекли, убедитесь, что вы удалили все истекшие. Получайте новые и т.д. После того, как вы убедитесь, что все так, как должно быть, затем сосредоточьтесь на файлах проекта.
- в finder, перейдите в ваши файлы .xcodeproj и покажите содержимое пакета.
- открыть файл project.pbxproj в xcode или textedit.
-
найти каждое исправление для PROVISIONING_PROFILE и удалить GUID, просто оставить пустым ""
В зависимости от вашего проекта у вас должно быть около 12 + refrences, удалите все GUID.
-
Сохраните файл, затем повторно запустите проект в XCODE
- Выберите правильные профили предоставления для всех возможных подписи кода (они не должны быть одинаковыми)
- Создайте свой проект, и вам должно быть хорошо.
Я думаю, что Xcode путается каким-то образом и удаляет все профили Provision из project.pbxproj, а затем повторно выбирает действительный профиль, который устанавливает его striaght.
Ответ 29
Если у вас есть новый mac, вы можете перейти к
Центр разработчика IOS → Портал обеспечения → Сертификаты → Разработка → Отменить и создать новый сертификат. Моя проблема решена. Моя ошибка: "Ошибка кодового знака: идентификатор" iPhone Developer "не соответствует действительной, не прошедшей срок действия паре сертификата/закрытого ключа в ваших цепочках ключей"
Ответ 30
Вчера столкнулся с аналогичной проблемой с нашим CI-сервером. Расширение приложения не может быть подписано с ошибкой
Code Sign error: No matching provisioning profiles found: No provisioning profiles with a valid signing identity (i.e. certificate and private key pair) matching the bundle identifier XXX were found.
Примечание. Я сам создал свои профили обеспечения из Портал разработчиков (не управляется Xcode).
Ошибка заключалась в том, что я создал профили обеспечения, используя сертификат распространения, но для настроек сборки было установлено, что сертификат разработчика. Изменение его для использования сертификата распространения решило проблему.
![введите описание изображения здесь]()
Сводка: сопоставьте сертификат, используемый для создания профиля подготовки в настройках сборки.