安全地解析XML文档

时间:2014-03-11 20:30:46

标签: java

如何安全地解析XML文档,以便它不允许外部实体作为传入XML文档的一部分?我正在使用DOM解析器 -

Document test = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(byteArrayInputStream))

1 个答案:

答案 0 :(得分:4)

您可以通过设置FEATURE_SECURE_PROCESSING;来请求安全处理是否禁止外部实体取决于DocumentBuilderFactory的提供者,但它可能是候选者。

DocumentBuilderFactory f = DocumentBuilderFactory.newInstance();
f.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
Document test = f.newDocumentBuilder.parse(...);