如何从standalone.xml wildfly

时间:2017-12-04 06:41:25

标签: 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;
    }
  

在上面你可以看到我已经硬编码了.jks文件的路径   pathoffile \ DemoTrust.jks也是我硬编码的用户名和密码。

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

1 个答案:

答案 0 :(得分:1)

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