Https “如何禁用”;defaultHostnameVerifier";SpringXD中的属性
我需要在将消息放在Q上时从处理器模块连接到https URL(假设这里的Q名称是:readFromQ),然后只记录URL GET调用的响应。我正在使用http客户端处理器对此处的url进行GET调用。 我的流如下所示: 流创建--名称hitSSL--定义“jms--目的地=readFromQ| http客户端--url=” --httpMethod=GET | log“ 现在的问题是,这个URL向SpringXD提供了一个证书,该证书与我试图访问的主机名不匹配。证书的名称类似于abc.mycompany.com,而URL的主机名是remoteHost Spring XD抛出: java.security.cert.CertificateException:找不到与remoteHost匹配的名称 我的证书确实添加了abc.mycompany.com证书 我需要知道是否有一种方法可以在建立SSL连接时禁止SpringXD使用CN验证主机名。 有没有办法禁用java属性javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifierHttps “如何禁用”;defaultHostnameVerifier";SpringXD中的属性,https,ssl-certificate,spring-xd,Https,Ssl Certificate,Spring Xd,我需要在将消息放在Q上时从处理器模块连接到https URL(假设这里的Q名称是:readFromQ),然后只记录URL GET调用的响应。我正在使用http客户端处理器对此处的url进行GET调用。 我的流如下所示: 流创建--名称hitSSL--定义“jms--目的地=readFromQ| http客户端--url=” --httpMethod=GET | log“ 现在的问题是,这个URL向SpringXD提供了一个证书,该证书与我试图访问的主机名不匹配。证书的名称类似于abc.mycom
注意:我可以使用“http”成功获取上述URL我可以覆盖主机名验证。感谢我的团队中的人 我更新了xd admin和xd container脚本,使其具有: DEFAULT\u JVM\u OPTS=“-javaagent:/opt/spring-xd-1.1.0.M1/xd/lib/HostnameVerifier.jar 此HostnameVerifier.jar是一个javaagent,它覆盖setDefaultHostnameVerifier属性中的verify方法,如下所示:
HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier()
{
public boolean verify(String s, SSLSession sslSession)
{
return true;
}
}
现在SpringXD不会抱怨要连接的主机和证书中的服务器名称不匹配