Отсутствует секретный ключ в сертификате распространения на брелок
У меня есть следующая проблема, решение которой я нигде не смог найти. По сути, у нас есть учетная запись разработчика компании (не предприятия), и поэтому для отправки нашего приложения я попросил руководителя нашей группы выслать мне сертификат распространения, а также создать и отправить мне профиль обеспечения распространения.
С профилем разработчика все работает хорошо, но когда я установил сертификат и профиль обеспечения, я не увидел профиль распределения в XCode, и при этом у меня нет секретного ключа под dist-cert в цепочке для ключей.
Кто-нибудь знает как это решить? Я прочитал в разных местах, что мне нужно будет отозвать сертификат и создать новый, но я не могу этого сделать, поскольку у нас в компании есть куча приложений, и я не могу отозвать его для всех.
Спасибо за помощь!!!
Ответы
Ответ 1
Ahh это обычная проблема. Решение прост:
Кто когда-либо создавал учетные данные разработчика, изначально должен перейти в цепочку ключей на своем компьютере и щелкнуть правой кнопкой мыши по ключевым (и) ключам для частного и публичного доступа и экспортировать ключ в файл.
Затем вы просто загрузите этот файл на свой компьютер и откройте его, и он будет добавлен в ваш брелок.
У вас должен быть как закрытый ключ (файл .pem), так и сертификат для ваших профилей подготовки.
Ответ 2
Пока у вас все еще есть доступ к mac, который использовался для генерации оригинального сертификата распространения, это очень просто.
Просто используйте это приложение Mac Keychain Access для экспорта как сертификата, так и закрытого ключа. Выберите оба с помощью shift или command и щелкните правой кнопкой мыши, чтобы экспортировать в файл .p12.
Прикрепил скриншот, чтобы было очень понятно.
На вашем Mac импортируйте этот файл .p12, и все готово (просто убедитесь, что у вас есть действующий профиль обеспечения).
![Just choose export]()
Ответ 3
Чтобы добавить ответы других, если у вас больше нет доступа к этому секретному ключу, довольно просто вернуться к работе:
- отозвать свой активный сертификат на портале обеспечения
- создать новый сертификат разработчика (доступ к цепочке для ключей/.../запрос для csr... и т.д.)
- скачать и установить новый сертификат
- создать новый профиль обеспечения для существующего идентификатора приложения (на портале подготовки)
- скачайте и установите новый профиль обеспечения и в сборке настройте соответствующие идентификаторы подписи кода
Ответ 4
Удалите существующий из KeyChain, получите и добавьте файл .p12 на ваш mac, откуда был создан сертификат.
Чтобы получить .p12 из исходного Mac, перейдите в KeyChain, разверните сертификат, выберите оба и экспортируйте 2 элемента. Это сохранит файл .p12 в вашем местоположении:
![введите описание изображения здесь]()
Ответ 5
В моем случае я потерял все закрытые ключи в своей цепочке для ключей, новые были импортированы правильно, но закрытый ключ также не отображается. Единственное, что помогло, - это создание нового CertificateSigningRequest.
Ответ 6
После того, как вы сменили Mac, который не является источником, который создал сертификат disitribution, вам не будет предоставлен секретный ключ. Просто удалите сертификат происхождения и заново создайте новый, который работает для меня.
Ответ 7
Когда я пытаюсь загрузить сборку iOS для тестового полета, появляется ошибка.
"Missing privacy key"
.
![enter image description here]()
Всего 2 шага для исправления этой ошибки.
- Удалить старый сертификат с developer.apple.com
- Создайте новый сертификат из Xcode или developer.apple.com
Моя проблема была решена (я использую Xcode 9.4.1).
Пожалуйста, проверьте, Xcode создал новый сертификат.
![enter image description here]()
Ответ 8
Для человека, который испуганы на повторное создание AppStore распределения сертификатов Apple, документация говорит:
Важное замечание: Повторное создание сертификатов разработки или распространения не влияет на приложения, отправленные вами в App Store, и не влияет на вашу возможность их обновления.
Но это влияет на приложения экосистемы Apple Developer Enterprise.
Ответ 9
- Создайте новый сертификат "Developer ID" из раздела OS X.
- Создание новых сертификатов iPhone
Ответ 10
Проверьте, используете ли вы Логин или нет, чтобы добавить сертификаты. Если вы проверяете систему в левой верхней части, мы не сможем ее увидеть.
Поэтому перетащите .cer в логин и проверьте, можете ли вы получить закрытый ключ или нет.
Ответ 11
Я получил доступ к этому сертификату на веб-сайте разработчика Apple и после его загрузки открыл его. Аналогично, при открытии я получил небольшое окно с вопросом, хочу ли я добавить сертификат в связку ключей. Просто нажмите "добавить", и ошибка "отсутствует закрытый ключ" исчезла.