Ответ 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
Я пытаюсь автоматизировать создание хранилища ключей с помощью инструмента хранилища ключей 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
Вместо того, чтобы пользователь вводил эти значения, существует ли какой-либо способ предоставления этих значений без взаимодействия пользователя либо внутри команды, либо через script?
Спасибо
Попробуйте следующее:
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
не забывайте -noprompt, иначе вам будет предложено ввести Да или Нет
Смотрите полную документацию о командной строке или введите keytool
без каких-либо аргументов.
В частности, вы можете посмотреть варианты -storepass password -keypass password