Làm cách nào để tự động tạo Keystore bằng công cụ kho khóa java? w / o tương tác của người dùng


90

Tôi đang cố gắng tự động hóa quá trình tạo kho khóa bằng công cụ kho khóa Java. Lệnh tôi đang sử dụng là:

keytool -keystore keystore -alias jetty -genkey -keyalg RSA

Nhưng sau lệnh này, người dùng được yêu cầu nhập một số đầu vào như sau:

Enter keystore password:  password
What is your first and last name?  
[Unknown]:  jetty.mortbay.org  
What is the name of your organizational unit?  
[Unknown]:  Jetty  
What is the name of your organization?  
[Unknown]:  Mort Bay Consulting Pty. Ltd.  
What is the name of your City or Locality?  
[Unknown]:  
What is the name of your State or Province?  
[Unknown]:  
What is the two-letter country code for this unit?  
[Unknown]:  
Is CN=jetty.mortbay.org, OU=Jetty, O=Mort Bay Consulting Pty. Ltd.,  
L=Unknown, ST=Unknown, C=Unknown correct?  
[no]:  yes  

Enter key password for <jetty>  
(RETURN if same as keystore password):  password  

Thay vì người dùng nhập các giá trị này, có cách nào cung cấp các giá trị này mà không có sự tương tác của người dùng, trong lệnh hoặc thông qua tập lệnh không?

Cảm ơn


tại sao bạn không đọc những thông tin này từ một tệp tài sản?
Shamis Shukoor

Có nhiều tùy chọn dòng lệnh hơn - đọc docs.oracle.com/javase/7/docs/technotes/tools/windows/… (bao gồm cả tên phân biệt)
Jayan 27/11/12

7
Chỉ vì ví dụ sử dụng địa chỉ cục bộ, không có nghĩa là vấn đề này được bản địa hóa. Tôi không phải là Vương quốc Anh và chỉ có cùng một câu hỏi. May mắn thay, vì một số đã trả lời câu hỏi trước khi nó được đóng lại, nó chỉ giúp tôi tiết kiệm được một khoảng thời gian cố gắng tìm ra câu trả lời.
Trevor North

7
Câu hỏi này rất hữu ích và câu trả lời đã giúp ích. Không hiểu tại sao nó bị đóng cửa.
Jose Martinez

2
Tuy nhiên, một ví dụ khác về việc kích hoạt người điều hành SO vui vẻ sẵn sàng nhảy súng ngay lập tức về việc đóng các câu hỏi thực tế, có liên quan và hữu ích để họ có thể thực hiện một lượng nhỏ sức mạnh mà họ có để khiến bản thân cảm thấy quan trọng. Đây là kết quả đầu tiên khi tôi tìm kiếm câu hỏi này trên Google và nó đã giúp tôi giải quyết vấn đề của mình, không thể tin được rằng nó đã bị đóng chỉ vì nó tham chiếu đến ngôn ngữ của người hỏi trong câu hỏi.
Fam

Câu trả lời:


163

Thử cái này:

keytool -genkey -noprompt \
 -alias alias1 \
 -dname "CN=mqttserver.ibm.com, OU=ID, O=IBM, L=Hursley, S=Hants, C=GB" \
 -keystore keystore \
 -storepass password \
 -keypass password

1
có cách nào để chỉ định mật khẩu kho khóa nguồn khi nhập kho khóa .p12 vào .jks không?
Erik Kaplun

3
@ErikAllikkeytool -importkeystore [...] -srcstorepass password_here
Guillaume Boudreau

10

đừng quên -không nhắc nhở, nếu không bạn sẽ được yêu cầu nhập Có hoặc Không


1
nếu ai đó khác gặp vấn đề tương tự mà vẫn có lời nhắc ngay cả với tùy chọn này: có một số lệnh có -srckeypass và -srcstorepass. bạn có thể dễ dàng kết hợp chúng
từ

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.