java - 如何从standalone.xml 中读取KeyStore 文件路径

标签 java jax-rs wildfly jks

首先,如果我的问题无效,我很抱歉,因为我对 SSL 实现和验证来自受信任证书颁发机构的请求一无所知。

基本上,我们使用 .jks 文件来验证请求,并且使用部署在 wildfly 上的 JAX-RS。

在standalone.xml中我们完成了如下配置:

<management>
 <security-realms>
**<security-realm name="SslRealm">
  <server-identities>
    <ssl>
      <keystore path="../../../ssl/keystore.jks" relative-to="jboss.server.config.dir" keystore-password="changeme"/>
    </ssl>
  </server-identities>
</security-realm>**
</security-realms>

现在在java代码中我们需要读取.jks文件、用户名和密码:

 public static Response getArtifactsHttps(String authInfo, String area) {
        String username = "username";
        String password1 = "password";
        StringBuilder authorization = new StringBuilder();
        authorization.append(username).append(":").append(password1);

        // String authHeader = "Basic " + Base64.getEncoder().encodeToString(authorization.toString().getBytes());
        Response response = RestAssured
                .given()
                .keyStore("pathOffile\\DemoTrust.jks", "DemoTrustKeyStorePassPhrase")
                .when()
                .contentType(MediaType.APPLICATION_JSON)
                .accept(MediaType.APPLICATION_JSON)
                .header(Constant.HTTP_HEADERS.AUTHORIZATION, "Basic " + authInfo)
                .header(Constant.HTTP_HEADERS.MODULETYPE, Constant.AC_MODULETYPE.CLIENT)
                .get("login").thenReturn();

        System.out.println("RESPONSE" + response);
        return response;
    }

In the above you can see i have hardcoded the path of the .jks file pathoffile\DemoTrust.jks also username and password i have hardcoded.

现在我想从standalone.xml 文件中读取所有这些值。有人可以建议我如何使用 java 来做到这一点吗?

最佳答案

使用 System.getProperty("jboss.server.config.dir") 获取配置路径的根目录。

关于java - 如何从standalone.xml 中读取KeyStore 文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47627813/

相关文章:

java - 如何使用java创建可追加的excelsheet

java - EhCache DiskStore在内存中

java - 如何在不使用servlet但使用JAX-RS的情况下将json对象从ajax发布到java类?

java - 输出大量数据最快的方法是什么?

java - 如何从一个restful web服务中获取一些数据,并将其保存到数据库中?

java - 通过 Eclipse 在 Docker 上调试 Wildfly 应用程序?

java - Java Spring SOAP Webservice 中的 JBoss (Wildfly) max-post-size 句柄响应

docker - Docker 容器上 Wildfly 中的 ActiveMQ 给出 : Invalid "host" value "0.0.0.0" detected

Java Swing 旋转和缩放

java - 格式化时间正则表达式以需要 AM/PM