Как создать закрытый ключ для сертификата распространения iPhone?

StackOverflow https://stackoverflow.com/questions/688809

Вопрос

На портале программы разработчиков iPhone есть видео, демонстрирующее, как создать сертификат разработки и назначить закрытый ключ.

Сейчас я закончил процесс разработки и начинаю распространять

Я создал «Сертификат распространения», но как мне назначить этому сертификату закрытый ключ?

Поскольку он получил «ошибку CodeSign:идентификатор подписи кода '...' не соответствует ни одному сертификату подписи кода в вашей цепочке для ключей" при компиляции

Он будет рад сообщить мне сейчас, нужно ли мне назначить закрытый ключ сертификату распространения и каким образом.

Обратите внимание, что я НЕ говорю здесь о сертификате разработки, спасибо.

Это было полезно?

Решение

Прочтите Получение сертификата распространения iPhone раздел сайта Apple Developer Connection для iPhone.Здесь шаг за шагом объясняется, что вам нужно будет сделать, в правильном порядке.

РЕДАКТИРОВАТЬ:Текущая ссылка выглядит так: https://developer.apple.com/library/watchos/documentation/IDEs/Conceptual/AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html#//apple_ref/doc/uid/TP40012582-CH31-SW1

Прежде чем вы сможете подписать код своего приложения, вы создаете сертификат разработки, а затем сертификат распространения для загрузки вашего приложения в iTunes Connect.Вы можете создавать все типы сертификатов и удостоверений подписи, которые вам нужны, с помощью Xcode.Xcode создает, загружает и устанавливает для вас ваши подписи.

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

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

Создание удостоверения подписи

  1. В окне «Настройки Xcode» нажмите «Учетные записи».

  2. Выберите команду, которую хотите использовать, и нажмите «Просмотреть подробности».

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

    Если кнопка «Создать» отключена, вам не разрешено создавать удостоверение подписи такого типа.Описание каждого типа сертификата см. в Таблице 14-2.

    После создания подписывающего удостоверения кнопка «Создать» исчезнет.

  4. Чтобы вернуться к настройкам учетных записей, нажмите «Готово».

Другие советы

Поскольку никто не обновил и не ответил на этот вопрос с тех пор, как Натан указал, что исходная ссылка на ответ недоступна (пункт номер один при публикации в stackoverflow: «Пожалуйста, обязательно Ответ на вопрос") вот ответ из моего опыта, надеюсь, кому-то поможет:

На этот конкретный вопрос (сертификат Dev/Distribution установлен, но нет закрытого ключа) ответом является выбор из двух альтернатив:

1.Создайте новый удостоверение сертификата через портал Apple Devloper.В этом случае вам нужно будет войти на портал разработчика Apple и использовать помощника, в рамках которого вам нужно будет создать и загрузить CSR (запрос на подпись сертификата), который также создаст открытый и закрытый ключи на компьютере.Apple подписывает запрос и вуаля, пара подписанных публичных/частных сертификатов: Ссылка

2.Экспортируйте закрытый ключ с компьютера, который изначально использовался для создания сертификата.В этом случае вы подписываетесь с использованием ранее созданного удостоверения, возможно, на старом компьютере или если (как в моем случае) вы разрабатываете для клиента, у которого уже созданы идентификаторы.Если вы не можете получить доступ к машине, первоначально использовавшейся для создания удостоверения сертификата, вам придется создать новое удостоверение в соответствии с руководством/помощником.

Для этого вам нужно будет экспортировать свой закрытый ключ (файл .p12) или пару открытого/закрытого ключей через Keychain Access и установить закрытый ключ или пару ключей на компьютер, на котором вы разрабатываете.Вот гид Я нашел в stackoverflow.

Ссылка: http://iphonedevsdk.com/forum/iphone-sdk-development/11498-problems-exporting-importing-p12-private-key-for-developing-on-another-mac.html

PS> Имейте в виду, я использую последний вариант прямо сейчас, и хотя данные свидетельствуют о том, что это сработает, я еще не проверял его. Если не сработает, я отвечу повторно!

Для меня перезапуск Xcode решил обе эти проблемы.
Очевидно, где-то все было настроено правильно, но нужно было сбросить/синхронизировать.

Если вы наведете курсор на изображение и щелкните маленький красный значок удаления, сохраните его.Уйдите и вернитесь на эту страницу, и вы сможете снова добавить значок.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top