首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以编程方式从server.xml读取解密的值

以编程方式从server.xml读取解密的值
EN

Stack Overflow用户
提问于 2019-10-03 20:25:47
回答 1查看 467关注 0票数 2

我有一个Websphere Liberty服务器,其中包含以下server.xml

代码语言:javascript
复制
<managedThreadFactory jndiName="concurrent/threadFactory" maxPriority="5" />

<openidConnectClient id="AppID"
  inboundPropagation="required"
  clientId="${APPID_CLIENT_ID}"
  clientSecret="${APPID_CLIENT_SECRET}"
  authorizationEndpointUrl="https://${APPID_HOST}/oauth/v4/${APPID_TENANT_ID}/authorization"
  tokenEndpointUrl="https://${APPID_HOST}/oauth/v4/${APPID_TENANT_ID}/token"
  jwkEndpointUrl="https://${APPID_HOST}/oauth/v4/${APPID_TENANT_ID}/publickeys"
  issuerIdentifier="https://${APPID_HOST}/oauth/v4/${APPID_TENANT_ID}"
  tokenEndpointAuthMethod="basic"
  signatureAlgorithm="none"
  trustAliasName="${APPID_HOST}"
  trustStoreRef="appidtruststore"
  audiences="${APPID_CLIENT_ID}" />

可以从Java应用程序代码中以编程方式读取clientSecret="${APPID_CLIENT_SECRET}"的解密值吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-03 22:06:16

这取决于值是如何编码的。如果它是加密的,根据定义,就没有办法轻松地解密它(否则它将违背加密的目的)。

如果你只是做一个可逆的编码(例如XOR或AES),你可以使用Liberty功能来解密它。

首先,确保您在server.xml中启用了以下功能:

代码语言:javascript
复制
<feature>passwordUtilities-1.0</feature>

然后,您可以使用com.ibm.websphere.crypto.PasswordUtil接口来解码它的值,如下所示:

代码语言:javascript
复制
String rawValue = // get from System properties or env var
String decodedValue = PasswordUtil.decode(rawValue);
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58219079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档