Я пытаюсь инициализировать Vault на JBoss 6.4, используя приведенный ниже учебник redhat:
Моя среда:
- Windows 10
- Java-версия "1.8.0_211"
Среда выполнения Java (TM) SE (сборка 1.8.0_211-b12)
Java HotSpot (TM) 64-разрядная серверная виртуальная машина (сборка 25.211-b12, смешанный режим)
- Jboss EAP 6.4
https://access.redhat.com/documentation/en-us/jboss_enterprise_application_platform/6.1/html/security_guide/mask_the_keystore_password_and_initialize_the_password_vault.
но я получаю ошибку ниже:
Initializing Vault
Exception encountered:Exception encountered:java.lang.RuntimeException: PBOX000137: Security Vault does not contain SecretKey entry under alias (vault)
------- Обновление ------
Когда я пытаюсь инициализировать его с помощью следующих команд: (каталог хранилища находится в папке bin, я пробовал и абсолютный, и относительный путь, то же исключение)
jboss-eap-6.4\bin\vault.bat --keystore vault/vault.keystore --keystore-password vault22 --alias vault --vault-block ds_irdb --attribute password --sec-attr IRM%bph2018 --enc-dir vault --iteration 120 --salt asdfghjk
jboss-eap-6.4\bin\vault.bat --keystore vault\vault.keystore --keystore-password vault22 --alias vault --vault-block ds_irdb --attribute password --sec-attr somePassword --enc-dir vault\ --iteration 120 --salt asdfghjk
Я получаю следующее исключение:
java.io.ObjectInputStream filterCheck
INFO: ObjectInputFilter REJECTED: null, array length: -1, nRefs: 1, depth: 1, bytes: 70, ex: n/a
Problem occured:
java.lang.Exception: Exception encountered:java.lang.RuntimeException: PBOX000140: Unable to get keystore (vault/vault.keystore)
at org.jboss.as.security.vault.VaultSession.initSecurityVault(VaultSession.java:194)
at org.jboss.as.security.vault.VaultSession.startVaultSession(VaultSession.java:212)
at org.jboss.as.security.vault.VaultTool.execute(VaultTool.java:196)
at org.jboss.as.security.vault.VaultTool.main(VaultTool.java:83)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.modules.Module.run(Module.java:312)
at org.jboss.modules.Main.main(Main.java:473)
Caused by: org.jboss.security.vault.SecurityVaultException: java.lang.RuntimeException: PBOX000140: Unable to get keystore (vault/vault.keystore)
at org.picketbox.plugins.vault.PicketBoxSecurityVault.init(PicketBoxSecurityVault.java:210)
at org.jboss.as.security.vault.VaultSession.initSecurityVault(VaultSession.java:191)
... 9 more
Caused by: java.lang.RuntimeException: PBOX000140: Unable to get keystore (vault/vault.keystore)
at org.picketbox.plugins.vault.PicketBoxSecurityVault.getKeyStore(PicketBoxSecurityVault.java:691)
at org.picketbox.plugins.vault.PicketBoxSecurityVault.init(PicketBoxSecurityVault.java:205)
... 10 more
Caused by: java.io.IOException: Invalid secret key format
at com.sun.crypto.provider.JceKeyStore.engineLoad(JceKeyStore.java:856)
at java.security.KeyStore.load(KeyStore.java:1445)
at org.picketbox.util.KeyStoreUtil.getKeyStore(KeyStoreUtil.java:201)
at org.picketbox.util.KeyStoreUtil.getKeyStore(KeyStoreUtil.java:151)
at org.picketbox.plugins.vault.PicketBoxSecurityVault.getKeyStore(PicketBoxSecurityVault.java:688)
Что я здесь пропустил?
Я думаю, что это связано с последней строкой исключения Invalid secret key format
, и я прочитал в списке ошибок Redhat, что это связано с пакетом криптографии Java 8.