【问题标题】:cxf 2way ssl not webservice give Cannot create a secure XMLInputFactorycxf 2way ssl not webservice give 无法创建安全的 XMLInputFactory
【发布时间】:2015-02-03 07:22:53
【问题描述】:

在我的由 cxf 开发的 Web 服务的客户端中,例如 this,并且应该是 2 路 ssl 实现,我得到以下异常。

java.lang.RuntimeException: Cannot create a secure XMLInputFactory

除非我将以下环境属性设置为值 1。

org.apache.cxf.stax.allowInsecureParser

但我想这意味着连接将不安全。 我说的对吗?

【问题讨论】:

标签: java web-services ssl cxf


【解决方案1】:

该异常与 SSL 无关。

如果您的服务使用 XML 内容并被不受信任的客户端访问(例如,它暴露在 Internet 中),它将容易受到 XXE attack 的攻击。为了缓解,您需要在类路径中安装 Woodstox 4.2.0 或更高版本。见WSTX-285

如果你的服务不接受 XML 内容,你应该没问题。

【讨论】:

    【解决方案2】:

    我添加了这三行并且工作正常

    属性 props = System.getProperties(); props.setProperty("org.apache.cxf.stax.allowInsecureParser", "1"); props.setProperty("UseSunHttpHandler", "true");

    【讨论】:

    • 请以代码块的形式呈现不仅仅是一个小sn-p的代码。你能解释一下System.getProperties().setProperty("org.apache.cxf.stax.allowInsecureParser", "1"); 的含义吗? (不安全?!) - 欢迎来到 Stack Exchange!
    • 就在调用 Web 服务之前
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-05
    • 2014-09-18
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 2018-12-24
    • 2021-12-13
    相关资源
    最近更新 更多