如何安全地解析XML文档,以便它不允许外部实体作为传入XML文档的一部分?我正在使用DOM解析器 -
Document test = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(new InputSource(byteArrayInputStream))
答案 0 :(得分:4)
您可以通过设置FEATURE_SECURE_PROCESSING
;来请求安全处理是否禁止外部实体取决于DocumentBuilderFactory
的提供者,但它可能是候选者。
DocumentBuilderFactory f = DocumentBuilderFactory.newInstance();
f.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, true);
Document test = f.newDocumentBuilder.parse(...);