Помилка під час спроби отримати сертифікат: вказаний елемент не вдалося знайти в брелоку


110

У мене виникли проблеми з кодуваннями програм, тому я видалив усі ключі з брелока. Потім я перейшов до асистента сертифікатів => Попросити сертифікат у сертифікаційного органу (для створення КСВ для нового сертифіката).

Тому введіть мою електронну адресу і ось що я отримаю:

Вказаний елемент не вдалося знайти в брелоку.

Що я роблю неправильно?

PS Коли я намагаюся створити орган сертифікації , я отримую ту ж помилку.


1
Я отримую ту ж помилку.
Скажіть,

9
Перезапуск KeyChain Access працював на мене :)
Mohit Padalia

1
Для тих, хто повторно використовує приватний ключ для другої мети підписання (наприклад, installer+ application), перегляньте інструкції @ toland-hon, наведені нижче, в яких використовується OpenSSL в командному рядку, щоб вирішити помилку Keychain Accessпрограми. Наведені нижче кроки, що спрямовують користувачів до Certificateрозділу, Keychain Accessвсе ще НЕ працюють при повторному використанні приватного ключа для другорядних цілей. КСВ вручну openssl- це життєздатне рішення.
tresf

Відповіді:


300

Я вирішив це. Переконайтеся, що ви перебуваєте в розділі "Сертифікати" та виберіть "Організація сертифікації відносин розробників Apple Worldwide", перш ніж запитувати сертифікат.


7
Ти герой. Я витягнув волосся, коли всі інші відповіді не вирішили питання.
BFeher

23
О мій бог Apple WTF? Дякую тобі, Джон!
MattD

2
Це божевільно. :(: P, що за фалода ??? Серйозно, там повинно бути якесь дружнє для користувача повідомлення або повідомлення.
Аділ Соомро

2
Я не розглядав цю відповідь, бо вважав, що це божевільний. але це насправді працює. є кілька сипучих частин яблучної екосистеми, які просто божевільні :)
alex

2
Це вирішило це для мене. Вибір мого старого приватного ключа не працював, а також не було вибрано ключ. Як незрозуміло ...
зайя

46

Доступ до брелоків не дозволить вам зажадати сертифікат у сертифікаційного органу з " ідентичністю " ..., якщо ви не маєте як приватного ключа, так і відкритого ключа для посвідчення особи у вашому брелоку. Я наткнувся на це, коли мав лише приватний ключ, а не відповідний відкритий ключ.

Ви можете створити відкритий ключ із приватного ключа та імпортувати його у свій брелок, використовуючи процедуру, описану в розділі " Я втратив відкритий ключ". Чи можу я відновити його з приватного ключа?

Після того, як я імпортував відкритий ключ, я зміг скористатися командою " Запити сертифікат" від центру сертифікації із командою " ідентичність " ... без запуску зазначеного елемента не вдалося знайти в помилці брелока .


Ви маєте рацію, як можна створити сертифікат без відкритого ключа :)
onmyway133

29

Перейдіть до розділу " Сертифікати " та виберіть "Організація сертифікації відносин розробників Apple у всьому світі ", перш ніж запитувати сертифікат.

введіть тут опис зображення


21

Ви (можливо, випадково) просите Keychain Access створити Запит на підпис сертифіката за допомогою наявного ключа . Якщо під час переходу до меню Keychain Access - Assistant Certificate Assistant (Асистент сертифікатів) вибрано ключ, представлені параметри для цього вибраного ключа.

Виберіть нечеревний елемент у вашому брелоку (наприклад, збережений пароль) та перейдіть до Keychain Access - сертифікат помічника знову, щоб нормально генерувати КСО.


Здається, що OS X тепер за замовчуванням підбирається до першого елемента, обраного зараз. Якщо ви просто вибираєте інший брелок (тобто Система) при створенні цього, це повинно вирішити проблему.
Джеймс Паркер

Святе лайно, я б ніколи цього не здогадувався. Розмова про поганий дизайн інтерфейсу ...
d512

9

Навіть я отримував це питання. Я вирішив це, вибравши All Itemsзамість панелі Keysв Categoriesпанелі, а потім спробував створити сертифікат.

Спробуйте це, воно обов'язково спрацює.


Краще перезавантажити
knight2016

7

Це сталося зі мною. Я помітив, що параметр меню для створення запиту на сертифікат змінився

Попросити сертифікат у сертифікаційного органу ...

до

Попросіть сертифікат у сертифікаційного органу із написом "Моє ім'я" ...

Перевірте цю опцію меню

Я працюю над доменом, тому я вийшов із системи, увійшов і вийшов як інший користувач, а потім знову ввійшов. Після цього меню з’явилося як очікувалося, і ця помилка зникла


4
Це особливість доступу Keychain. Якщо у вас вибрано ключ, коли ви переходите до цього меню, він запропонує використати ключ для створення запиту підпису сертифіката. (У цьому випадку параметри такі ж, як і при клацанні правою кнопкою миші на клавіші.) Вихід із клавіші скасувати вибір.
Філ Кальвін

Вам не потрібно виходити з системи, а потім увійти. просто киньте брелок і відкрийте його знову, не вибирайте жодного запису у списку та перейдіть до меню, щоб запитувати
M.Shuaib Imran

7

Моєю метою було створити CSR (запит на підписання сертифікату), використовуючи мій приватний ключ, щоб подати Apple, щоб створити новий сертифікат розповсюдження iPhone. Я переконався, що Сертифікати - обрана категорія зліва. Я спробував правою кнопкою миші натиснути свій приватний ключ та натиснути на запит на отримання сертифіката від органу сертифікації із імпортованим приватним ключем, і я отримав таку помилку, коли намагаюся зберегти його.

Вказаний елемент не вдалося знайти в брелоку.

Я також отримав таку ж помилку, коли перейшов через меню файлів: Keychain Access > Certificate Assistant

Що я зібрав з інших джерел Інтернету, це те, що Keychain Access НЕ дозволяє вам створити новий КСВ, якщо ви імпортували приватний ключ, лише якщо ви створили ключ локально з інструменту.

Замість цього я експортував приватний ключ та використовував openssl для створення нового CSR, який Apple прийняв, і тепер посилається на новий імпортований приватний ключ.

Експорт приватного ключа

  1. Клацніть правою кнопкою миші приватний ключ
  2. Експорт
  3. Переконайтесь, що вибрано формат файлу p12
  4. Зберегти
  5. Введіть пароль (необов’язково)
  6. Дозволити доступ до ключа експорту
  7. Відкрийте термінал та перейдіть до експортованого каталогу
  8. Витяг ключа з контейнера p12

Будьте уважні, оскільки приватний ключ .pem більше не захищений паролем)

$ openssl pkcs12 -in Certificates.p12 -out Certificates.pem -nodes
Enter Import Password: ********************
MAC verified OK

Створення нового КСВ із експортованим приватним ключем

$ openssl req -out Certificates.csr -key Certificates.pem -new
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:.
State or Province Name (full name) [Some-State]:.
Locality Name (eg, city) []:.
Organization Name (eg, company) [Internet Widgits Pty Ltd]:.
Organizational Unit Name (eg, section) []:.
Common Name (e.g. server FQDN or YOUR name) []:John Doe Dev Key
Email Address []:thon@example.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Кілька речей, які слід зазначити:

  • Введіть. коли ви хочете, щоб поле було порожнім, або за замовчуванням у дужках буде включено все, що є [].
  • Загальна назва (CN) має бути вашим приватним ключем (наприклад, John Doe Dev Key)
  • Адреса електронної пошти має бути вашою електронною адресою (наприклад, thon@example.com)
  • Все інше повинно бути порожнім

Підтвердьте свою КСВ

$ openssl req -noout -text -in Certificates.csr
Certificate Request:
    Data:
        Version: 0 (0x0)
        Subject: CN=John Doe Dev Key/emailAddress=thon@example.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            RSA Public Key: (2048 bit)
                Modulus (2048 bit):
                    
                Exponent: 65537 (0x10001)
        Attributes:
            a0:00
    Signature Algorithm: sha1WithRSAEncryption
        

Що вам слід подбати, це у рядку " Тема" та переконайтесь, що це правильно.

Тепер все, що вам потрібно зробити, це подати його в Apple, дочекатися генерації сертифікату, а потім встановити його. Після імпорту нового сертифікованого сертифіката ви побачите, що він посилається на старий сертифікат, який ви експортували вище.


Те саме питання. Хотіли зберегти той самий приватний ключ (тобто спочатку використовувались, developerID_installer.cerале хочете його повторно використовувати developerID_application.cer). Інструкції Apple погані, оскільки вони змушують вас використовувати баггі Keychain Accessабо ще гірше, XCode. Я натрапив на це вище рішення досить ненавмисно. Оголошення вашого, тому що саме це я і закінчила.
tresf

4

У мене така ж проблема. я можу створити CSR, тоді не створювати його, і така ж помилка стає.

тоді я можу шукати і знаходити рішення, але не вирішувати.

деякий час я можу це вирішити.

мій доступ до брелоків через ящик у першу пору CSR. тому мій доступ до брелоків - це блокування.

відкрити> доступ до брелока> вгорі дисплея доступу брелка "Клацніть, щоб розблокувати системну брелок"

Клацніть це і розблокуйте системний брелок, а потім створіть файл CSR, а не Отримайте цю помилку.


2

Вибір приватного ключа в брелок буде проблемою. "вказаний елемент не вдалося знайти в брелоку". Вибираючи відкритий ключ, вирішіть його. "Ваш запит на сертифікат створений на диску."


1

Гаразд, ім'я, яке відображається, відображає елемент, який ви виділили в головному вікні Keychain (якщо ви вибрали інший елемент тут, ви також побачите, що в ньому змінюється пункт меню). Якщо ви перейдете до розділу категорії ліворуч і виберіть, наприклад, мої сертифікати, і поверніться до пункту меню, що підтримує сертифікат, він виглядає / діє так, як ви звикли. Сподіваюся, це допомагає!


1

Після анулювання кожного сертифіката, який я мав, я зрозумів, що проблема в моєму юбікеї . Це заважало підписувати додаток. Після того як я її видалив, проблему вирішено.

Ця тема на форумі допомогла мені: https://forums.developer.apple.com/thread/106938


Дякую! Це було і моє питання. Це може не бути проблемою для більшості людей, але кожен, хто має юбікей, повинен спробувати витягнути його та відновити.
Філіхп Бусбі

0

Якщо ви вибрали будь-який приватний ключ у брелоку ключів під час створення нового CSR, він підкаже вам із посиланням на цей ключ. Просто переконайтесь, що ви вибрали будь-який неприватний ключ для створення нового КСВ, який буде корисний для створення нового.

Наприклад, виберіть у інструменті брелоків "Публічний ключ" або будь-якому наявному сертифікаті, не закріпленому за ним приватним ключем. Тепер слід за пунктом "Запити сертифікат у сертифікаційного органу".



-14

Вирішили це! Довелося змінити "Сертифікат користувача" на "Підпис коду".


Що ви маєте на увазі під зміною "Сертифікат користувача" на "Підписання коду"?
користувач500

Так, будь ласка, я також зіткнувся з тією ж проблемою, що ви маєте на увазі під "підписанням коду? Де це?"
Habitante
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.