尽管-noprompt和-keypass已设置,keytool会询问密码

时间:2015-08-19 09:13:00

标签: bash keytool

我正在尝试创建一个安装脚本,该脚本从.ini文件中读取数据并将其写入多个配置文件。一步是通过keytool创建一个SSL密钥并请求它的认证(创建一个csr文件)。我现在遇到的问题是keytool要求输入密码而不是使用提供的密码(在变量$ keyStorePassword中),尽管我也激活了-noprompt。如果有人能提供帮助,我会很高兴。

keytool -genkey -noprompt -keyalg RSA -keysize 2048 \
-dname "CN=${HOSTNAME}-${microserviceName}-${environment}, O=${organizationName}, L=${localityName}, S=${stateName}, C=${country}" \
-validity ${validity} -keypass ${keyStorePassword} -keystore ${keyStorePath} -alias ${microserventerviceName}-ssl

keytool -certreq -keyalg RSA -file ${microserviceName}.csr -keystore ${keyStorePath} -alias ${microserviceName}-ssl

我已经在网上搜索了,但这个问题似乎并不普遍。

1 个答案:

答案 0 :(得分:2)

密码有两个参数:

  • -keypass:密钥的密码。
  • -storepass:密钥库的密码。

Java密钥库中的每个密钥条目都有其单独的密码,因此在生成新密钥或访问密钥时,您必须同时提供密钥库密码和密钥密码。