Lỗi khi cố gắng lấy chứng chỉ: Không tìm thấy mục được chỉ định trong chuỗi khóa


110

Tôi đang gặp sự cố với việc sắp xếp mã ứng dụng của mình, vì vậy tôi đã xóa tất cả các khóa khỏi chuỗi khóa. Sau đó, tôi vào Trợ lý chứng chỉ => Yêu cầu chứng chỉ từ Tổ chức phát hành chứng chỉ (để tạo CSR cho chứng chỉ mới).

Vì vậy, hãy nhập địa chỉ email của tôi và đây là những gì tôi nhận được:

Không thể tìm thấy mục đã chỉ định trong chuỗi khóa.

Tôi đang làm gì sai?

Tái bút: Khi tôi đang cố tạo Tổ chức phát hành chứng chỉ , tôi gặp lỗi tương tự.


1
Tôi đang gặp một lỗi tương tự. Xin vui lòng bạn có thể xây dựng câu trả lời hoặc ai đó bạn ai biết làm thế nào để làm điều đó
Iducool

9
Khởi động lại Quyền truy cập
KeyChain

1
Đối với những người sử dụng lại khóa riêng cho mục đích ký thứ hai (ví dụ: installer+ application), vui lòng xem các bước hướng dẫn sử dụng của @ toland-hon bên dưới, sử dụng OpenSSL trên dòng lệnh để giải quyết Keychain Accessứng dụng lỗi . Các bước bên dưới hướng người dùng đến Certificatephần Keychain Accessvẫn KHÔNG hoạt động khi sử dụng lại khóa cá nhân cho mục đích phụ. CSR thủ công thông qua openssllà một giải pháp khả thi.
tresf

Câu trả lời:


300

Tôi đã giải quyết nó. Đảm bảo bạn đang ở trong phần "Chứng chỉ" và bạn chọn "Cơ quan cấp chứng chỉ quan hệ nhà phát triển trên toàn thế giới của Apple" trước khi yêu cầu chứng chỉ.


7
Bạn là một anh hùng. Tôi đã giật tóc khi tất cả các câu trả lời khác không giải quyết được vấn đề.
BFeher

23
Ôi trời ơi Apple WTF? Cảm ơn John!
MattD

2
Điều này thật điên rồ. :(: P gì falooda ??? Nghiêm túc, cần phải có một số người dùng cảnh giác thân thiện hoặc tin nhắn.
Adil Soomro

2
Tôi đã không xem xét câu trả lời này vì tôi nghĩ rằng nó thật điên rồ. nhưng nó thực sự hoạt động. có một số phần lỏng lẻo của hệ sinh thái táo thật điên rồ :)
alex

2
Điều này đã giải quyết nó cho tôi. Việc chọn khóa riêng tư cũ của tôi không hoạt động, cũng như không chọn khóa. Làm thế nào che khuất ...
zai chang

46

Keychain Access sẽ không cho phép bạn Yêu cầu chứng chỉ từ Tổ chức phát hành chứng chỉ Với " danh tính " ... trừ khi bạn có cả khóa cá nhân khóa công khai cho danh tính trong chuỗi khóa của mình. Tôi gặp phải vấn đề này khi tôi chỉ có khóa riêng tư chứ không phải khóa công khai tương ứng.

Bạn có thể tạo khóa công khai từ khóa cá nhân và nhập khóa đó vào chuỗi khóa của mình bằng cách sử dụng quy trình được mô tả trong Tôi mất khóa công khai. Tôi có thể khôi phục nó từ khóa riêng không?

Sau khi nhập khóa công khai, tôi có thể sử dụng lệnh Yêu cầu chứng chỉ từ Tổ chức phát hành chứng chỉ Với " danh tính " ... mà không cần kích hoạt Không thể tìm thấy mục được chỉ định trong lỗi chuỗi khóa .


Bạn nói đúng, làm thế nào các chứng chỉ có thể được tạo ra mà không cần chìa khóa công cộng :)
onmyway133

29

Đi tới phần " Chứng chỉ " và chọn " Cơ quan cấp chứng chỉ quan hệ nhà phát triển trên toàn thế giới của Apple " trước khi yêu cầu chứng chỉ.

nhập mô tả hình ảnh ở đây


21

Bạn (có thể vô tình) yêu cầu Keychain Access tạo Yêu cầu ký chứng chỉ bằng một khóa hiện có . Nếu một khóa được chọn khi bạn vào menu Truy cập chuỗi khóa - Hỗ trợ chứng chỉ , các tùy chọn được hiển thị sẽ dành cho khóa đã chọn đó.

Chọn một mục không phải khóa trong chuỗi khóa của bạn (như mật khẩu đã lưu) và chuyển đến Truy cập chuỗi khóa - Hỗ trợ chứng chỉ một lần nữa để tạo CSR bình thường.


Có vẻ như OS X bây giờ mặc định là mục đầu tiên đang được chọn. Nếu bạn chỉ chọn một chuỗi khóa khác (tức là Hệ thống) khi bạn tạo chuỗi khóa này, nó sẽ khắc phục sự cố.
James Parker

Khỉ thật, tôi sẽ không bao giờ khách mời điều đó. Nói về thiết kế giao diện người dùng xấu ...
d512

9

Ngay cả tôi đã nhận được vấn đề này. Tôi đã giải quyết điều này bằng cách chọn All Itemsthay vì chọn Keystrong Categoriesngăn và sau đó cố gắng tạo Chứng chỉ.

Hãy thử điều này, nó chắc chắn sẽ hiệu quả.


Tốt hơn để khởi động lại
Knight2016

7

Điều này đã xảy ra với tôi, tôi nhận thấy rằng tùy chọn menu để tạo yêu cầu chứng chỉ đã thay đổi từ

Yêu cầu Chứng chỉ từ Tổ chức phát hành chứng chỉ ...

đến

Yêu cầu Chứng chỉ từ Tổ chức phát hành chứng chỉ với "Tên tôi" ...

Kiểm tra tùy chọn menu này

Tôi đang ở trên miền tại cơ quan nên tôi đã đăng xuất, đăng nhập và đăng xuất với tư cách người dùng khác, sau đó đăng nhập lại. Sau đó menu xuất hiện như mong đợi và lỗi này đã biến mất


4
Đây là một tính năng của Truy cập chuỗi khóa. Nếu bạn đã chọn một khóa khi đi tới menu này, nó sẽ đề nghị sử dụng khóa đó để tạo Yêu cầu ký chứng chỉ. (Trong trường hợp này, các tùy chọn giống như khi nhấp chuột phải vào một phím.) Đăng xuất sẽ bỏ chọn khóa.
Phil Calvin

Bạn không phải đăng xuất và sau đó đăng nhập. chỉ cần thoát khỏi chuỗi khóa và mở lại ngay bây giờ, không chọn bất kỳ mục nhập nào trong danh sách và đi tới menu để yêu cầu
M.Shuaib Imran

7

Mục tiêu của tôi là tạo CSR (yêu cầu ký chứng chỉ) sử dụng khóa cá nhân hiện có của tôi để gửi cho Apple nhằm tạo chứng chỉ Phân phối iPhone mới. Tôi đảm bảo Chứng chỉ là Danh mục đã chọn ở bên trái. Tôi đã thử nhấp chuột phải vào khóa riêng tư của mình và nhấp vào Yêu cầu chứng chỉ từ Tổ chức phát hành chứng chỉ với Khóa cá nhân đã nhập và sẽ gặp lỗi sau khi tôi cố lưu nó.

Không thể tìm thấy mục đã chỉ định trong chuỗi khóa.

Tôi cũng gặp lỗi tương tự khi xem qua menu tệp: Truy cập chuỗi khóa > Hỗ trợ chứng chỉ

Những gì tôi thu thập được từ các nguồn internet khác là Truy cập chuỗi khóa KHÔNG cho phép bạn tạo CSR mới nếu bạn đã nhập khóa cá nhân, chỉ khi bạn tạo khóa cục bộ từ công cụ.

Thay vào đó, những gì tôi đã làm là xuất khóa riêng tư và sử dụng openssl để tạo CSR mới mà Apple đã chấp nhận và giờ đây tham chiếu đến Khóa riêng đã nhập mới.

Xuất khóa cá nhân

  1. Nhấp chuột phải vào khóa riêng tư
  2. Xuất khẩu
  3. Đảm bảo rằng định dạng tệp p12 được chọn
  4. Tiết kiệm
  5. Nhập mật khẩu (tùy chọn)
  6. Cho phép truy cập để xuất khóa
  7. Mở Terminal và chuyển đến thư mục đã xuất
  8. Trích xuất khóa từ vùng chứa p12

Hãy cẩn thận vì khóa cá nhân .pem không còn được bảo vệ bằng mật khẩu)

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

Tạo CSR mới với khóa cá nhân đã xuất

$ 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 []:

Một số điều cần lưu ý:

  • Đi vào . khi bạn muốn trường để trống hoặc mặc định sẽ bao gồm bất cứ thứ gì trong dấu ngoặc [].
  • Tên chung (CN) phải là tên khóa riêng của bạn (ví dụ: John Doe Dev Key)
  • Địa chỉ Email phải là địa chỉ email của bạn (ví dụ: thon@example.com)
  • Mọi thứ khác nên để trống

Xác minh CSR của bạn

$ 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
        

Điều bạn nên quan tâm là trên dòng Chủ đề và xác minh điều đó là chính xác.

Bây giờ tất cả những gì bạn cần làm là gửi nó cho Apple, đợi chứng chỉ được tạo và sau đó cài đặt nó. Sau khi bạn nhập chứng chỉ mới được tạo của mình, bạn sẽ thấy rằng nó sẽ tham chiếu đến chứng chỉ cũ mà bạn đã xuất ở trên.


Cùng một vấn đề. Muốn giữ cùng một khóa riêng (tức là ban đầu được sử dụng cho developerID_installer.cernhưng muốn sử dụng lại cho developerID_application.cer). Các hướng dẫn của Apple không tốt vì chúng buộc bạn phải sử dụng lỗi Keychain Accesshoặc tệ hơn là XCode. Tôi tình cờ gặp giải pháp trên này một cách tình cờ. Ủng hộ của bạn vì đó chính xác là những gì tôi đã làm.
tresf

4

tôi có cùng một vấn đề. tôi có thể tạo CSR sau đó không tạo nó và lỗi tương tự đang nhận được.

sau đó tôi có thể tìm kiếm và tìm thấy có thể giải pháp nhưng không giải quyết được.

một thời gian tôi có thể giải quyết nó.

quyền truy cập chuỗi khóa của tôi thông qua thùng thời gian cổ tay CSR. do đó, quyền truy cập chuỗi khóa của tôi bị khóa.

mở> truy cập chuỗi khóa> trên cùng của màn hình truy cập chuỗi khóa "Nhấp để mở khóa chuỗi khóa hệ thống"

Nhấp vào đó và mở khóa chuỗi khóa hệ thống, sau đó tạo tệp CSR rồi Không gặp lỗi này.


2

Việc chọn khóa cá nhân trong chuỗi khóa sẽ xảy ra sự cố. "không thể tìm thấy mục đã chỉ định trong chuỗi khóa" Trong khi bạn chọn khóa công khai, hãy giải quyết vấn đề đó. "Yêu cầu chứng chỉ của bạn đã được tạo trên đĩa."


1

Được rồi, tên hiển thị sẽ hiển thị mục bạn đã đánh dấu trong cửa sổ chính của Chuỗi khóa (nếu bạn chọn một mục khác ở đây, bạn cũng thấy mục menu thay đổi theo nó). Nếu bạn đi đến phần danh mục ở bên trái và chọn chứng chỉ của tôi chẳng hạn và quay lại mục menu hỗ trợ chứng chỉ, nó trông giống như / hoạt động như bạn đã quen. Hi vọng điêu nay co ich!


1

Sau khi thu hồi mọi chứng chỉ mà tôi có, tôi phát hiện ra vấn đề là với yubikey của mình . Nó cản trở việc ký ứng dụng. Sau khi tôi xóa nó, vấn đề đã được giải quyết.

Chuỗi diễn đàn này đã giúp tôi: https://forums.developer.apple.com/thread/106938


Cảm ơn bạn! Đây cũng là vấn đề của tôi. Đây có thể không phải là vấn đề đối với hầu hết mọi người, nhưng bất kỳ ai có Yubikey nên thử kéo nó ra và xây dựng lại.
Philihp Busby

0

Nếu bạn đã chọn bất kỳ khóa riêng tư nào trong chuỗi khóa trong khi tạo CSR mới thì nó sẽ nhắc bạn tham chiếu đến khóa đó. Chỉ cần đảm bảo rằng bạn đã chọn bất kỳ mục không phải khóa riêng tư nào để tạo CSR mới, điều này sẽ hữu ích cho việc tạo mới.

Ví dụ: tiếp tục chọn trong công cụ chuỗi khóa "Khóa công khai" hoặc bất kỳ chứng chỉ hiện có nào không có khóa riêng tư được căn chỉnh với nó. Bây giờ hãy làm theo quy trình "Yêu cầu chứng chỉ từ Tổ chức phát hành chứng chỉ".



-14

Đã giải quyết nó! Đã phải thay đổi "Chứng chỉ người dùng" thành "Ký mã".


Ý bạn là gì khi thay đổi "Chứng chỉ người dùng" thành "Ký mã"?
user500

? Có xin vui lòng, tôi cũng chạy vào cùng một vấn đề, điều gì làm bạn có ý nghĩa bởi "ký mã nơi vậy?
Habitante
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.