我正在尝试使用加密字符串设置系统属性值
${ENC::initial-resolver:ENCRYPTED_STRING}
所以我输入jboss-cli.sh并运行命令
/system-property=javax.net.ssl.trustStorePassword:add(value="${ENC::initial-resolver:ENCRYPTED_STRING}")
- 我得到操作执行成功的信息,但是当我读取资源时,我可以看到该值是:
:initial-resolver:ENCRYPTED_STRING
与standalone-full-ha.xml 中相同<property name="javax.net.ssl.trustStorePassword" value=":initial-resolver:ENCRYPTED_STRING"/>
我尝试使用单引号和/或双引号放置转义字符,但我得到的唯一可见结果是“$”不会像
$:initial-resolver:ENCRYPTED_STRING
那样被剪切,无论“{ENC:”和“}”被剪切什么.
我需要像传递时一样存储该值:
${ENC::initial-resolver:ENCRYPTED_STRING}
在standalone-full-ha.xml中:
<property name="javax.net.ssl.trustStorePassword" value="${ENC::initial-resolver:ENCRYPTED_STRING}"/>
解决方案是防止参数在 bash 中扩展。 整个解决方案描述如下: https://stackoverflow.com/a/57541782/17651713
/system-property=javax.net.ssl.trustStorePassword:add(value=\$\${ENC::initial-resolver:ENCRYPTED_STRING})