由于 TLS 不兼容,SOAP Web 服务不接受请求

SOAP Web service not accepting the request because of incompatible TLS

我正在尝试从本地(开发环境)AEM 5.6.1 进行使用 HTTPS 的第三方 SOAP 服务调用。 SOAP 服务接受最低 TLS 协议为 TLSv1.1 的请求。 我有使用 JDK7 的 AEM 5.6.1,对于 JDK7,默认的 TLSv1。 实现最低可接受的 TLS。我尝试了以下两种方法:

方法一: 使 AEM 以 -Dhttps.protocols=TLSv1.2

开头

方法二: 更新了 SSLContext 以更新 TLS。

SSLContext context = null;
try {
    context = SSLContext.getInstance("TLSv1.2");
    context.init(null, null, new java.security.SecureRandom());
    SSLContext.setDefault(context);
    LOGGER.info("Currecnt TLS:" + SSLContext.getDefault().getProtocol());
}catch (Exception e){
    LOGGER.error("Error while updating TLS:",e);
}

第一个不起作用,但另一个将 AEM 的 TLS 协议更新为 TLSv1.2。

但我仍然无法访问该服务。错误保持不变。

错误:

The required TLS connection level has not been met.  SSL Protocol level: TLSv1

参考:

我想知道两件事,

谢谢

这是 CQ 5.5/5.6 中的错误。核心问题归结为这样一个事实,即在旧的 CQ 版本中,配置不允许禁用 SSLv3,因此 TLS 参数从未生效。

您需要联系 Daycare 支持并请求针对您的版本的修补程序。

或者,从您的包共享帐户查看此 HF:HOTFIX-5220,因为它可能修复了您的 TLS 问题。

AEM 6.0 发布了针对此问题的修补程序,可通过包共享获取。使用您的登录名并在 6.0 下搜索 HOTFIX-5238,如果上述修补程序对您不起作用,请向 Daycare 索取适用于您的 AEM 版本的后向端口或兼容包。