如何使用 java 密钥库工具自动生成密钥库?无用户交互

2022-08-31 10:00:38

我正在尝试使用 Java 密钥库工具自动生成密钥库。我正在使用的命令是:

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

但在此命令之后,用户需要输入某些输入,如下所示:

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  

除了用户输入这些值之外,是否有任何方法可以在没有用户交互的情况下提供这些值,无论是在命令中还是通过脚本?

谢谢


答案 1

试试这个:

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

答案 2

不要忘记 -noprompt,否则系统将要求您输入“是”或“否”


推荐