From a380163ae3771beacefe6fcacf29bd9abe66ced8 Mon Sep 17 00:00:00 2001 From: Colm O hEigeartaigh Date: Wed, 31 Jan 2018 17:23:41 +0000 Subject: [PATCH] EAGLE-1077 - Set the secure processing feature on all DocumentBuilderFactory instances --- .../org/apache/eagle/jpm/mr/running/parser/MRJobParser.java | 4 +++- .../eagle/security/hive/jobrunning/HiveJobFetchSpout.java | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/eagle-jpm/eagle-jpm-mr-running/src/main/java/org/apache/eagle/jpm/mr/running/parser/MRJobParser.java b/eagle-jpm/eagle-jpm-mr-running/src/main/java/org/apache/eagle/jpm/mr/running/parser/MRJobParser.java index 1330e3f1ba..d140c8a1c1 100644 --- a/eagle-jpm/eagle-jpm-mr-running/src/main/java/org/apache/eagle/jpm/mr/running/parser/MRJobParser.java +++ b/eagle-jpm/eagle-jpm-mr-running/src/main/java/org/apache/eagle/jpm/mr/running/parser/MRJobParser.java @@ -50,6 +50,7 @@ import java.net.URLConnection; import java.util.*; import java.util.function.Function; +import javax.xml.XMLConstants; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; @@ -517,6 +518,7 @@ private Set calcFetchCounterAndAttemptTaskId(List tasks) { connection.setReadTimeout(READ_TIMEOUT); is = connection.getInputStream(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + dbf.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, Boolean.TRUE); DocumentBuilder db = dbf.newDocumentBuilder(); Document dt = db.parse(is); Element element = dt.getDocumentElement(); @@ -608,4 +610,4 @@ private AnalyzerEntity convertToAnalysisEntity(JobExecutionAPIEntity jobExecutio mrJobAnalysisEntity.setProgress(this.app.getProgress()); return mrJobAnalysisEntity; } -} \ No newline at end of file +} diff --git a/eagle-security/eagle-security-hive/src/main/java/org/apache/eagle/security/hive/jobrunning/HiveJobFetchSpout.java b/eagle-security/eagle-security-hive/src/main/java/org/apache/eagle/security/hive/jobrunning/HiveJobFetchSpout.java index 08a325126f..fed56117cc 100644 --- a/eagle-security/eagle-security-hive/src/main/java/org/apache/eagle/security/hive/jobrunning/HiveJobFetchSpout.java +++ b/eagle-security/eagle-security-hive/src/main/java/org/apache/eagle/security/hive/jobrunning/HiveJobFetchSpout.java @@ -44,6 +44,7 @@ import org.w3c.dom.Node; import org.w3c.dom.NodeList; +import javax.xml.XMLConstants; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import java.io.InputStream; @@ -201,6 +202,7 @@ private boolean fetchRunningConfig(AppInfo appInfo, List mrJobs) { is = connection.getInputStream(); Map hiveQueryLog = new HashMap<>(); DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + dbf.setFeature(XMLConstants.FEATURE_SECURE_PROCESSING, Boolean.TRUE); DocumentBuilder db = dbf.newDocumentBuilder(); Document dt = db.parse(is); Element element = dt.getDocumentElement();