究竟是什麼你想在這裏加密什麼?
加密密鑰存儲密碼和類似的,你正在尋找被稱爲Wildfly保管庫。見https://developer.jboss.org/wiki/MaskingPasswordsForWildFlyUsingNon-interactiveVaultTool。
如果你正在尋找一種方式來專門加密數據存儲的密碼,你需要使用picketbox對密碼進行加密事先,並在每個數據存儲的安全子系統使用一個安全域。
示例腳本加密密碼:
#!/bin/bash
PASSWORD=$1
if [ -z "$PASSWORD" ]; then
echo "Usage: `basename $0` <password>"
exit 1
fi
JAVA_HOME="${JAVA_HOME:=/usr/java/default}"
cd /opt/wildfly/modules/system/layers/base/org/picketbox/main
$JAVA_HOME/bin/java -classpath picketbox-4.0.21.Beta1.jar \
org.picketbox.datasource.security.SecureIdentityLoginModule $PASSWORD \
| sed -e 's#Encoded password: ##'
例安全域
<subsystem xmlns="urn:jboss:domain:security:1.2">
<security-domains>
...
<security-domain name="my_security_domain" cache-type="default">
<authentication>
<login-module code="org.picketbox.datasource.security.SecureIdentityLoginModule" flag="required">
<module-option name="username" value="my_username"/>
<module-option name="password" value="my_encrypted_password"/>
<module-option name="managedConnectionFactoryName" value="jboss.jca:service=LocalTxCM,name=my_datasource"/>
</login-module>
</authentication>
</security-domain>
</security-domains>
</subsystem>
而且在數據源定義與
<subsystem xmlns="urn:jboss:domain:datasources:3.0">
</datasources>
<datasource pool-name="my_datasource"...>
...
<security>
<security-domain>my_security_domain</security-domain>
</security>
</datasource>
</subsystem>
感謝您的回覆和努力引用它,但我的目標和我的問題的目的比你的回答表明更簡單。在GlassFish瀏覽器管理控制檯可以到'配置>安全>國度> file'然後'管理Users'與一個名字,組列表和密碼(它存儲並加密*添加新用戶很容易地*在'keyfile')。 'asadmin'命令同樣提供'create-file-user'來在密鑰文件中創建一個條目。然後可以在安裝之間簡單複製密鑰文件。對我的問題的答案似乎到目前爲止是「不,沒有相應的」 –
好吧,那是一個完全不同的問題。 Wildfly具有默認的ApplicationRealm,您可以通過管理控制檯 - >訪問控制(或使用add-user.sh在shell中)向其添加用戶和組。這會生成兩個文件mgmt-groups.properties和mgmt-users.properties,您可以將它們複製到新安裝中(我們將其用於木偶安裝)。那是你在找什麼? –