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

На самом деле мы используем две машины MAC для разработки пакета на Mac с использованием xcode. Только у одного Mac есть сертификат, и он находится в другой стране. мы экспортировали этот сертификат для локального Mac. Но когда я пытаюсь выполнить кодирование с использованием этого сертификата, я получаю сообщение об ошибке: «Не удалось найти подходящее удостоверение подписи для «Установщик ID разработчика: ID». Я не могу добавить код. шаги для правильного импорта сертификата.


person MacDeveloper    schedule 27.05.2014    source источник


Ответы (1)


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

Для экспорта удостоверений подписи лучше всего использовать панель настроек «Учетные записи» в Xcode.

  1. Запустите Xcode на машине, с которой вы отправляете информацию о подписи.
  2. Выберите Xcode > Настройки.
  3. Выберите вкладку Аккаунты.
  4. В меню шестеренки выберите Экспорт учетных записей, выберите файл, в который хотите поместить информацию, и введите пароль.
  5. Перенесите экспортированный файл идентификации на принимающую машину.
  6. Выполните шаги 1–3 на принимающей машине.
  7. В меню шестеренки выберите Импорт учетных записей и выберите файл, который вы только что перенесли, и введите пароль, когда его спросят.

Это должно импортировать всю идентификацию подписи, включая сертификаты, профили подготовки и закрытые ключи.

Через доступ к связке ключей

Если по какой-то причине ваш Xcode на машине, с которой вы отправляете информацию для подписи, не имеет перечисленных учетных записей, вы можете подписывать с помощью сценария или из командной строки и использовать идентификационную информацию без загрузки учетных записей непосредственно в Xcode. Пользовательский интерфейс. Если возможно, я бы посоветовал добавить вашу учетную запись в Xcode с помощью вкладки Учетные записи, чтобы получить автоматическое поведение, предоставляемое Xcode, но это может быть необязательно, особенно если вы используете только ID разработчика ( дистрибутив не из AppStore).

Для экспорта из Keychain Access вам потребуется экспортировать как сертификат подписи, так и ключ. Сертификат подписи также доступен на портале разработчиков Apple, но ключ никогда не покидает вашу машину напрямую (в CSR отправляется только его отпечаток пальца), поэтому, если исходный ключ не существует на машине, к которой у вашей организации есть доступ, вам может потребоваться отозвать существующий ключ и создать новый.

Чтобы найти ключ в Keychain Access, выполните следующие действия:

  1. Запустите доступ к связке ключей
  2. Нажмите Мои сертификаты.
  3. Просмотрите список или используйте поле поиска, чтобы найти свой сертификат (поиск по Developer ID должен привести к любым сертификатам, связанным с идентификатором разработчика).
  4. Каждый сертификат, который имеет связанный закрытый ключ, будет иметь треугольник раскрытия слева, нажмите на него, чтобы открыть ключи.
  5. Этот ключ можно экспортировать, выбрав ключ и сертификат (убедитесь, что они оба выбраны, или экспортируйте их по одному) и используя Файл > Экспорт элементов.
  6. Укажите пароль, когда будет предложено защитить файл экспорта.
  7. Скопируйте экспортированные файлы на другой компьютер.
  8. Используйте Доступ к цепочке ключей и Файл > Импорт элементов, чтобы импортировать сертификат/ключ на новый компьютер.

ПРИМЕЧАНИЕ. Если вы потеряете закрытый ключ, вам потребуется отозвать сертификат, сгенерировать новый ключ и создать новый сертификат подписи. Не делайте этого, предварительно не убедившись, что у вас нет доступных копий ключа. Конкретные последствия зависят от того, какие сертификаты подписаны с помощью ключа, но вам потребуется повторно сгенерировать все сертификаты, в которых использовался предыдущий ключ.

person gaige    schedule 27.05.2014
comment
Спасибо @gaige. Но как импортировать закрытый ключ. Мои экспортные учетные записи не выделяются, чтобы щелкнуть по ним. я совсем новичок в этом. помогите мне сделать это. - person MacDeveloper; 28.05.2014
comment
Из вашего исходного сообщения я предположил, что по крайней мере одна из машин может подписывать двоичные файлы в Xcode с использованием этого сертификата. Если это так, эта машина должна иметь возможность экспортировать. Если это не так, используйте вкладку «Учетные записи», чтобы добавить Apple ID, который можно подписывать. Любая машина, на которой вы можете успешно подписать, имеет и сертификат, и закрытый ключ. Если вы не можете войти ни на одном из компьютеров, вам потребуется переустановить и ключ подписи, и сертификат. - person gaige; 28.05.2014
comment
Да, одна из моих машин может подписывать двоичные файлы в xcode, используя этот сертификат. Это означает, что сначала мне нужно выбрать, какую учетную запись экспортировать, потому что я не могу выбрать свой сертификат из цепочек ключей. Как вы сказали, если мне нужно добавить идентификатор Apple, какой идентификатор я должен добавить. Могу ли я добавить непосредственно это имя сертификата - person MacDeveloper; 28.05.2014
comment
Если вы можете автоматически подписывать двоичные файлы в Xcode, у вас уже должна быть настроена учетная запись в Xcode. Если вы подписываете их вручную (используя xcodebuild), то они могут не загрузиться в Xcode. Вам не нужно (и действительно не нужно, если только вы не должны) экспортировать из приложения Keychain Access, потому что там трудно найти нужные вещи. Через минуту я добавлю в свой ответ дополнительную информацию, которая может помочь в дальнейшем. - person gaige; 28.05.2014
comment
Могу ли я получить сертификат в цепочках ключей напрямую и оттуда я могу его экспортировать. но в xcode у меня не выделяются экспортные учетные записи - person MacDeveloper; 28.05.2014