Xalan Transformer功能

时间:2015-10-27 19:36:42

标签: java xml xalan

我运行Fortify扫描以排除安全漏洞。它建议我将以下功能设置为我的XML Document to XML String transformer。

        final TransformerFactory tf = TransformerFactory.newInstance();
        tf.setFeature("http://xml.org/sax/features/external-general-entities", false);
        tf.setFeature("http://xml.org/sax/features/external-parameter-entities", false);

这会导致异常,因为这些字符串不存在。 XMLConstants.FEATURE_SECURE_PROCESSING有一个选项,但我不清楚是否阻止使用外部实体。 JavaDoc声明:“true指示实现安全地处理XML。这可能会限制XML构造以避免诸如拒绝服务攻击等条件。”

tf.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);

1 个答案:

答案 0 :(得分:0)

如上面的评论中所述,这些功能需要在XML解析器中设置,而不是在XSLT Transformer中设置。