it-roy-ru.com

Как создать сертификат P12 для распространения iOS

У нас есть приложение для iOS, срок действия сертификата Push-уведомления которого истек, и мы пытаемся создать новое. Я создал новые сертификаты на портале Provisioning (ios_developer.cer, ios_distribution.cer) и загрузил их. Я следовал инструкциям здесь, в Stack Overflow , чтобы преобразовать его в PEM, а затем в файлы P12, но я застрял. Когда я пытаюсь преобразовать PEM в P12, ему нужен какой-то закрытый ключ, и я не знаю, где его взять.

Я также попытался загрузить их в Keychain Access. Я читал, что вы можете экспортировать их как P12 оттуда, но когда я делаю импорт, они нигде не появляются.

88
RobG

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

115
picciano

. Файлы p12 используются для публикации приложения в Apple App Store

А. Создайте (.certSigningRequest) CSR-файл

  1. Открытый доступ к связке ключей из утилит
  2. На панели инструментов Доступ к цепочке для ключей выберите Доступ к цепочке для ключей -> Предпочтения
  3. Во всплывающем окне выберите Сертификаты .
  4. Установите для обоих "Протокол статуса сертификата в сети" и "Список отзыва сертификатов" значение "Выкл."
  5. Закрыть это окно
  6. Теперь на панели инструментов откройте Доступ к цепочке ключей> Ассистент сертификации> Запросить сертификат у центра сертификации
  7. Введите адрес электронной почты и общее имя, которое вы использовали для регистрации в программе iOS для разработчиков
  8. Оставьте CA Email пустым и выберите "Сохранено на диск" и "Позвольте мне указать информацию о паре ключей"
  9. Нажмите Продолжить
  10. Выберите имя файла и место назначения на жестком диске
  11. Нажмите Сохранить
  12. В следующем окне установите значение " Key Size" на "2048 бит"
  13. Установите "Алгоритм" на "RSA"
  14. Нажмите Продолжить

Это создаст и сохранит ваш файл certSigningRequest (CSR) на вашем жестком диске. Открытый и закрытый ключ также будет создан в Access Keychain Access с введенным общим именем.

B. Создайте файл ".cer" в учетной записи разработчика iOS

  1. Войдите в Apple учетную запись разработчика. Нажмите "Сертификаты, идентификаторы и профили"
  2. Нажмите "Подготовка профилей"
  3. В разделе "Сертификаты" нажмите "Производство"
  4. Нажмите кнопку "Добавить" (+) в правом верхнем углу главной панели
  5. Теперь выберите "App Store and Ad Hoc"
  6. Нажмите Продолжить
  7. Нажмите "Выбрать файл" и найдите CSR-файл, созданный на жестком диске.
  8. Нажмите Создать
  9. Нажмите Скачать , чтобы получить файл

C. Установите .cer и создайте сертификат .p12

  1. Найдите . Cer файл, который вы скачали, и дважды щелкните
  2. Установите в раскрывающемся списке "Логин" "логин" и нажмите "Добавить"
  3. Откройте KeyChain Access, и вы найдете профиль, созданный на шаге A
  4. Вы можете расширить профиль "закрытый ключ" (показывает сертификат, который вы добавили)
  5. Выберите только эти два элемента (не открытый ключ)
  6. Щелкните правой кнопкой мыши и выберите "Экспорт 2 элементов…" из всплывающего окна.
  7. Теперь убедитесь, что формат файла ". P12" и выберите имя файла и место назначения на жестком диске.
  8. Нажмите Сохранить. Теперь вам будет предложено установить пароль, но оставьте оба поля пустыми
  9. Нажмите ОК. Теперь у вас есть файл .p12 на жестком диске
64
Jayprakash Dubey

ОК, проблема решена! кажется, что когда я дважды щелкаю по сертификату, он автоматически устанавливает его в цепочку ключей SYSTEM - я не знаю почему. Вместо этого я просто перетаскиваю сертификат в цепочку ключей LOGIN, и тогда все хорошо. Благодаря этой статье -> Добавление сертификатов в связку ключей и создание файла формата .p12 - alon rosenfeld 10 месяцев назад

29
Abraham Lopez

вы не получите опцию расширения, если не отфильтруете, выбрав (Сертификаты) в левом нижнем углу цепочки для ключей

28
albaiti

Для тех, у кого все еще есть эта проблема, решение для меня состояло в том, чтобы НЕ выбирать оба и "Экспортировать 2 элемента" (ключ и сертификат) - скорее просто экспортировать сертификат, который УЖЕ включает ключ. С 2016 года я думаю, что это способ сделать это, потому что предыдущие загрузки, которые работали с элементами экспорта 2, больше не работают.

3
Jessicardo

Для всех, у кого есть опция P12 серого/серого цвета:

Убедитесь, что вы находитесь в категории "Мои сертификаты" или "Сертификаты" в Keychain Access.

https://sailthru.zendesk.com/hc/en-us/articles/115000032546-Can-t-export-my-certificate-in-p12-format

2
Dirk Boer