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
- Nhấp chuột phải vào khóa riêng tư
- Xuất khẩu
- Đảm bảo rằng định dạng tệp p12 được chọn
- Tiết kiệm
- Nhập mật khẩu (tùy chọn)
- Cho phép truy cập để xuất khóa
- Mở Terminal và chuyển đến thư mục đã xuất
- 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.