使用VAULT配置Wildfly 8.0.0加密密钥库密码时,无效的密钥库格式异常

时间:2018-06-27 12:05:08

标签: java ssl wildfly keystore

我已将JDK 1.8 u162配置为wildfly 8.0.0服务器,以通过创建自签名证书为应用程序提供HTTPS支持。为了成功配置它,我在standalone.xml文件中以明文形式指定了密钥库密码,并且它可以正常工作。
现在,我想以加密模式而不是明文形式设置密钥库密码。为此,我使用了VAULT脚本并执行了所有必需的步骤来生成VAULT.dat文件和标签。在standalone.xml文件中指定了必需的设置后,当我启动我的Wild-fly服务器时,它给了我java.io.IOException:无效的密钥库格式异常,由于未部署该系统。
我已执行以下步骤:
1)为了生成密钥库文件,我使用了以下命令并按照说明进行操作。
     keytool -genkey -keyalg RSA -alias vault -keystore osp_keystore.jks -validity 365 -keysize 2048

2)我打开了VAULT窗口(vault.bat)以加密密钥库密码。我已经执行了所有必需的步骤,这些步骤为我提供了在standlone.xml文件中进行配置的以下信息。

<vault>
  <vault-option name="KEYSTORE_URL" value="D:\osp\standalone\configuration\osp_keystore.jks"/>
  <vault-option name="KEYSTORE_PASSWORD" value="MASK-ZCA9zDtIIr7BbsQlgnChk"/>
  <vault-option name="KEYSTORE_ALIAS" value="ospvault"/>
  <vault-option name="SALT" value="ASDF1234"/>
  <vault-option name="ITERATION_COUNT" value="50"/>
  <vault-option name="ENC_FILE_DIR" value="D:\osp\standalone\configuration\vault\"/>
</vault>

Vault Block:keystore
Attribute Name:password
VAULT::keystore::password::1

3)我已使用以下标记配置了standalone.xml文件。
    a)在</extensions><management>标签之间指定上述标签。
    b)在<security-realm name="ApplicationRealm">标签下添加以下标签。

<server-identities>
                 ssl><keystore path=" osp_keystore.jks" relative-to="jboss.server.config.dir" keystore-password="${VAULT::keystore::password::1}" /></ssl>
                </server-identities>

c)在<subsystem xmlns="urn:jboss:domain:undertow:1.0">标签下,将ApplicationRealm与HTTPS绑定。

<https-listener name="https" socket-binding="https" security-realm="ApplicationRealm"/>

1 个答案:

答案 0 :(得分:0)

服务器标识的密钥库和库的密钥库是两个不同的密钥库。 生成密钥库的示例:

keytool -genseckey -alias vault -storetype jceks -keyalg AES -keysize 128 -storepass vault123 -keypass vault123 -validity 365 -keystore ${jboss-config}\vault\vault.keystore

,然后在standalone.xml中:

<vault-option name="KEYSTORE_URL" value="${jboss-config}/vault/vault.keystore"/>

强烈建议阅读: https://access.redhat.com/documentation/en-us/jboss_enterprise_application_platform/6.1/html/security_guide/Create_a_Java_Keystore_to_Store_Sensitive_Strings