如何配置Wildfly 8.2在ssl连接上禁用Common Name验证(CXF disableCNCheck)



我使用Wildfly 8.2在工作中托管一个应用程序,这个应用程序需要在某些时候访问只允许SSL连接的web服务。该web服务不属于我的公司,我无法更改其任何配置。此web服务使用自签名SSL证书,该证书具有不同于web服务域的通用名称(CN)。

我已经将web服务的证书添加到JVM密钥库中,但是Wildfly服务器不允许连接完成,因为web服务证书上的通用名称与其url上的域名不同。

因此,为了使我的应用程序能够完成SSL连接,我需要禁用wildfly的公共名称验证。这就是问题所在,我只找到了一些关于如何禁用该属性的解决方案,更准确地说3。前两个涉及到在standalone.xml配置文件中添加一些额外的行,更准确地说,它们都建议我在"extensions"标签之后添加一个"system-properties"标签。

第一个:

    <extensions>
        ...
    </extensions>
    <system-properties>
        <property name="cxf.tls-client.disableCNCheck" value="true"/>
    </system-properties>

第二个:

    <extensions>
        ...
    </extensions>
    <system-properties>
        <property name="org.jboss.security.ignoreHttpsHost" value="true"/>
    </system-properties>

这两个都不适合我。第三种解决方案是使用参数"- dog .jboss.security"。当我初始化服务器时,ignoreHttpsHost=true,这也没有效果。

如何在wildfly 8.2上禁用这个通用名称检查?

对于wildfly,在standalone.xml

中设置以下系统属性
<property name="java.protocol.handler.pkgs" value="com.sun.net.ssl.internal.www.protocol"/>  
<system-properties>
    <property name="java.protocol.handler.pkgs" value="com.sun.net.ssl.internal.www.protocol"/>
    <property name="org.jboss.security.ignoreHttpsHost" value="true"/>
    <property name="cxf.tls-client.disableCNCheck" value="true"/>
</system-properties>

相关内容

  • 没有找到相关文章

最新更新