首先,如果我的问题无效,我很抱歉,因为我对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来做到这一点?
答案 0 :(得分:1)
使用System.getProperty(“jboss.server.config.dir”)获取配置路径的根目录。