Elytron 在解析变量时切割加密表达式

问题描述 投票:0回答:1

我正在尝试使用加密字符串设置系统属性值

${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}"/>

jboss wildfly elytron
1个回答
0
投票

解决方案是防止参数在 bash 中扩展。 整个解决方案描述如下: https://stackoverflow.com/a/57541782/17651713

/system-property=javax.net.ssl.trustStorePassword:add(value=\$\${ENC::initial-resolver:ENCRYPTED_STRING})
© www.soinside.com 2019 - 2024. All rights reserved.