[45/50] [abbrv] hadoop git commit: HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS protection. Contributed by Mukul Kumar Singh.

2017-07-19 Thread xyao
HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS 
protection. Contributed by Mukul Kumar Singh.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/413b23eb
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/413b23eb
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/413b23eb

Branch: refs/heads/HDFS-7240
Commit: 413b23eb04eee24275257ab462133e0818f87449
Parents: 04ff412
Author: Anu Engineer 
Authored: Wed Jul 19 10:29:06 2017 -0700
Committer: Anu Engineer 
Committed: Wed Jul 19 10:29:06 2017 -0700

--
 .../hdfs/server/namenode/SecondaryNameNode.java | 10 +
 .../namenode/TestNameNodeHttpServerXFrame.java  | 22 
 2 files changed, 32 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/413b23eb/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
index 6dd085a..ff83e34 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
@@ -479,6 +479,16 @@ public class SecondaryNameNode implements Runnable,
 DFS_SECONDARY_NAMENODE_KERBEROS_INTERNAL_SPNEGO_PRINCIPAL_KEY,
 DFSConfigKeys.DFS_SECONDARY_NAMENODE_KEYTAB_FILE_KEY);
 
+final boolean xFrameEnabled = conf.getBoolean(
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED,
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED_DEFAULT);
+
+final String xFrameOptionValue = conf.getTrimmed(
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE,
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE_DEFAULT);
+
+builder.configureXFrame(xFrameEnabled).setXFrameOption(xFrameOptionValue);
+
 infoServer = builder.build();
 infoServer.setAttribute("secondary.name.node", this);
 infoServer.setAttribute("name.system.image", checkpointImage);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/413b23eb/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
index 947e951..aaa713e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hdfs.server.namenode;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.hadoop.http.HttpServer2;
@@ -32,6 +33,7 @@ import java.net.HttpURLConnection;
 import java.net.InetSocketAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URI;
 
 /**
  * A class to test the XFrameoptions of Namenode HTTP Server. We are not 
reusing
@@ -94,4 +96,24 @@ public class TestNameNodeHttpServerXFrame {
 conn.connect();
 return conn;
   }
+
+  @Test
+  public void testSecondaryNameNodeXFrame() throws IOException {
+Configuration conf = new HdfsConfiguration();
+FileSystem.setDefaultUri(conf, "hdfs://localhost:0");
+
+SecondaryNameNode sn = new SecondaryNameNode(conf);
+sn.startInfoServer();
+InetSocketAddress httpAddress = SecondaryNameNode.getHttpAddress(conf);
+
+URL url = URI.create("http://"; + httpAddress.getHostName()
++ ":" + httpAddress.getPort()).toURL();
+HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+conn.connect();
+String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS");
+Assert.assertTrue("X-FRAME-OPTIONS is absent in the header",
+xfoHeader != null);
+Assert.assertTrue(xfoHeader.endsWith(HttpServer2.XFrameOption
+.SAMEORIGIN.toString()));
+  }
 }


-
To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-commits-h...@hadoop.apache.org



hadoop git commit: HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS protection. Contributed by Mukul Kumar Singh.

2017-07-19 Thread aengineer
Repository: hadoop
Updated Branches:
  refs/heads/branch-2.8.2 a389a4f26 -> 38521af08


HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS 
protection. Contributed by Mukul Kumar Singh.

(cherry picked from commit 413b23eb04eee24275257ab462133e0818f87449)
(cherry picked from commit e0297ffbc89e9f037d5f6a8c5874ce8794656e0c)
(cherry picked from commit 6ed569df217a2c0d0e23661d2353c1fac428ee80)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/38521af0
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/38521af0
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/38521af0

Branch: refs/heads/branch-2.8.2
Commit: 38521af0880c4e19a16571c3adbfe668ba4f79c2
Parents: a389a4f
Author: Anu Engineer 
Authored: Wed Jul 19 10:29:06 2017 -0700
Committer: Anu Engineer 
Committed: Wed Jul 19 10:50:54 2017 -0700

--
 .../hdfs/server/namenode/SecondaryNameNode.java | 10 +
 .../namenode/TestNameNodeHttpServerXFrame.java  | 22 
 2 files changed, 32 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/38521af0/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
index acb2c8a..175d138 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
@@ -479,6 +479,16 @@ public class SecondaryNameNode implements Runnable,
 DFS_SECONDARY_NAMENODE_KERBEROS_INTERNAL_SPNEGO_PRINCIPAL_KEY,
 DFSConfigKeys.DFS_SECONDARY_NAMENODE_KEYTAB_FILE_KEY);
 
+final boolean xFrameEnabled = conf.getBoolean(
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED,
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED_DEFAULT);
+
+final String xFrameOptionValue = conf.getTrimmed(
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE,
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE_DEFAULT);
+
+builder.configureXFrame(xFrameEnabled).setXFrameOption(xFrameOptionValue);
+
 infoServer = builder.build();
 infoServer.setAttribute("secondary.name.node", this);
 infoServer.setAttribute("name.system.image", checkpointImage);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/38521af0/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
index 947e951..aaa713e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hdfs.server.namenode;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.hadoop.http.HttpServer2;
@@ -32,6 +33,7 @@ import java.net.HttpURLConnection;
 import java.net.InetSocketAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URI;
 
 /**
  * A class to test the XFrameoptions of Namenode HTTP Server. We are not 
reusing
@@ -94,4 +96,24 @@ public class TestNameNodeHttpServerXFrame {
 conn.connect();
 return conn;
   }
+
+  @Test
+  public void testSecondaryNameNodeXFrame() throws IOException {
+Configuration conf = new HdfsConfiguration();
+FileSystem.setDefaultUri(conf, "hdfs://localhost:0");
+
+SecondaryNameNode sn = new SecondaryNameNode(conf);
+sn.startInfoServer();
+InetSocketAddress httpAddress = SecondaryNameNode.getHttpAddress(conf);
+
+URL url = URI.create("http://"; + httpAddress.getHostName()
++ ":" + httpAddress.getPort()).toURL();
+HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+conn.connect();
+String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS");
+Assert.assertTrue("X-FRAME-OPTIONS is absent in the header",
+xfoHeader != null);
+Assert.assertTrue(xfoHeader.endsWith(HttpServer2.XFrameOption
+  

hadoop git commit: HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS protection. Contributed by Mukul Kumar Singh.

2017-07-19 Thread aengineer
Repository: hadoop
Updated Branches:
  refs/heads/branch-2.8 4daf5741e -> 6ed569df2


HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS 
protection. Contributed by Mukul Kumar Singh.

(cherry picked from commit 413b23eb04eee24275257ab462133e0818f87449)
(cherry picked from commit e0297ffbc89e9f037d5f6a8c5874ce8794656e0c)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/6ed569df
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/6ed569df
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/6ed569df

Branch: refs/heads/branch-2.8
Commit: 6ed569df217a2c0d0e23661d2353c1fac428ee80
Parents: 4daf574
Author: Anu Engineer 
Authored: Wed Jul 19 10:29:06 2017 -0700
Committer: Anu Engineer 
Committed: Wed Jul 19 10:46:21 2017 -0700

--
 .../hdfs/server/namenode/SecondaryNameNode.java | 10 +
 .../namenode/TestNameNodeHttpServerXFrame.java  | 22 
 2 files changed, 32 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/6ed569df/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
index acb2c8a..175d138 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
@@ -479,6 +479,16 @@ public class SecondaryNameNode implements Runnable,
 DFS_SECONDARY_NAMENODE_KERBEROS_INTERNAL_SPNEGO_PRINCIPAL_KEY,
 DFSConfigKeys.DFS_SECONDARY_NAMENODE_KEYTAB_FILE_KEY);
 
+final boolean xFrameEnabled = conf.getBoolean(
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED,
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED_DEFAULT);
+
+final String xFrameOptionValue = conf.getTrimmed(
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE,
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE_DEFAULT);
+
+builder.configureXFrame(xFrameEnabled).setXFrameOption(xFrameOptionValue);
+
 infoServer = builder.build();
 infoServer.setAttribute("secondary.name.node", this);
 infoServer.setAttribute("name.system.image", checkpointImage);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/6ed569df/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
index 947e951..aaa713e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hdfs.server.namenode;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.hadoop.http.HttpServer2;
@@ -32,6 +33,7 @@ import java.net.HttpURLConnection;
 import java.net.InetSocketAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URI;
 
 /**
  * A class to test the XFrameoptions of Namenode HTTP Server. We are not 
reusing
@@ -94,4 +96,24 @@ public class TestNameNodeHttpServerXFrame {
 conn.connect();
 return conn;
   }
+
+  @Test
+  public void testSecondaryNameNodeXFrame() throws IOException {
+Configuration conf = new HdfsConfiguration();
+FileSystem.setDefaultUri(conf, "hdfs://localhost:0");
+
+SecondaryNameNode sn = new SecondaryNameNode(conf);
+sn.startInfoServer();
+InetSocketAddress httpAddress = SecondaryNameNode.getHttpAddress(conf);
+
+URL url = URI.create("http://"; + httpAddress.getHostName()
++ ":" + httpAddress.getPort()).toURL();
+HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+conn.connect();
+String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS");
+Assert.assertTrue("X-FRAME-OPTIONS is absent in the header",
+xfoHeader != null);
+Assert.assertTrue(xfoHeader.endsWith(HttpServer2.XFrameOption
+.SAMEORIGIN.toString()));
+  }
 }


---

hadoop git commit: HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS protection. Contributed by Mukul Kumar Singh.

2017-07-19 Thread aengineer
Repository: hadoop
Updated Branches:
  refs/heads/branch-2 979d37ae2 -> e0297ffbc


HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS 
protection. Contributed by Mukul Kumar Singh.

(cherry picked from commit 413b23eb04eee24275257ab462133e0818f87449)


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/e0297ffb
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/e0297ffb
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/e0297ffb

Branch: refs/heads/branch-2
Commit: e0297ffbc89e9f037d5f6a8c5874ce8794656e0c
Parents: 979d37a
Author: Anu Engineer 
Authored: Wed Jul 19 10:29:06 2017 -0700
Committer: Anu Engineer 
Committed: Wed Jul 19 10:42:28 2017 -0700

--
 .../hdfs/server/namenode/SecondaryNameNode.java | 10 +
 .../namenode/TestNameNodeHttpServerXFrame.java  | 22 
 2 files changed, 32 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/e0297ffb/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
index 1358f46..d31f5db 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
@@ -479,6 +479,16 @@ public class SecondaryNameNode implements Runnable,
 DFS_SECONDARY_NAMENODE_KERBEROS_INTERNAL_SPNEGO_PRINCIPAL_KEY,
 DFSConfigKeys.DFS_SECONDARY_NAMENODE_KEYTAB_FILE_KEY);
 
+final boolean xFrameEnabled = conf.getBoolean(
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED,
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED_DEFAULT);
+
+final String xFrameOptionValue = conf.getTrimmed(
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE,
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE_DEFAULT);
+
+builder.configureXFrame(xFrameEnabled).setXFrameOption(xFrameOptionValue);
+
 infoServer = builder.build();
 infoServer.setAttribute("secondary.name.node", this);
 infoServer.setAttribute("name.system.image", checkpointImage);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/e0297ffb/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
index 947e951..aaa713e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hdfs.server.namenode;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.hadoop.http.HttpServer2;
@@ -32,6 +33,7 @@ import java.net.HttpURLConnection;
 import java.net.InetSocketAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URI;
 
 /**
  * A class to test the XFrameoptions of Namenode HTTP Server. We are not 
reusing
@@ -94,4 +96,24 @@ public class TestNameNodeHttpServerXFrame {
 conn.connect();
 return conn;
   }
+
+  @Test
+  public void testSecondaryNameNodeXFrame() throws IOException {
+Configuration conf = new HdfsConfiguration();
+FileSystem.setDefaultUri(conf, "hdfs://localhost:0");
+
+SecondaryNameNode sn = new SecondaryNameNode(conf);
+sn.startInfoServer();
+InetSocketAddress httpAddress = SecondaryNameNode.getHttpAddress(conf);
+
+URL url = URI.create("http://"; + httpAddress.getHostName()
++ ":" + httpAddress.getPort()).toURL();
+HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+conn.connect();
+String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS");
+Assert.assertTrue("X-FRAME-OPTIONS is absent in the header",
+xfoHeader != null);
+Assert.assertTrue(xfoHeader.endsWith(HttpServer2.XFrameOption
+.SAMEORIGIN.toString()));
+  }
 }


-
To unsubscribe, e-mail: common-commits

hadoop git commit: HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS protection. Contributed by Mukul Kumar Singh.

2017-07-19 Thread aengineer
Repository: hadoop
Updated Branches:
  refs/heads/trunk 04ff412da -> 413b23eb0


HDFS-12158. Secondary Namenode's web interface lack configs for X-FRAME-OPTIONS 
protection. Contributed by Mukul Kumar Singh.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/413b23eb
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/413b23eb
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/413b23eb

Branch: refs/heads/trunk
Commit: 413b23eb04eee24275257ab462133e0818f87449
Parents: 04ff412
Author: Anu Engineer 
Authored: Wed Jul 19 10:29:06 2017 -0700
Committer: Anu Engineer 
Committed: Wed Jul 19 10:29:06 2017 -0700

--
 .../hdfs/server/namenode/SecondaryNameNode.java | 10 +
 .../namenode/TestNameNodeHttpServerXFrame.java  | 22 
 2 files changed, 32 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hadoop/blob/413b23eb/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
index 6dd085a..ff83e34 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/SecondaryNameNode.java
@@ -479,6 +479,16 @@ public class SecondaryNameNode implements Runnable,
 DFS_SECONDARY_NAMENODE_KERBEROS_INTERNAL_SPNEGO_PRINCIPAL_KEY,
 DFSConfigKeys.DFS_SECONDARY_NAMENODE_KEYTAB_FILE_KEY);
 
+final boolean xFrameEnabled = conf.getBoolean(
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED,
+DFSConfigKeys.DFS_XFRAME_OPTION_ENABLED_DEFAULT);
+
+final String xFrameOptionValue = conf.getTrimmed(
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE,
+DFSConfigKeys.DFS_XFRAME_OPTION_VALUE_DEFAULT);
+
+builder.configureXFrame(xFrameEnabled).setXFrameOption(xFrameOptionValue);
+
 infoServer = builder.build();
 infoServer.setAttribute("secondary.name.node", this);
 infoServer.setAttribute("name.system.image", checkpointImage);

http://git-wip-us.apache.org/repos/asf/hadoop/blob/413b23eb/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
--
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
index 947e951..aaa713e 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestNameNodeHttpServerXFrame.java
@@ -18,6 +18,7 @@
 package org.apache.hadoop.hdfs.server.namenode;
 
 import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.fs.FileSystem;
 import org.apache.hadoop.hdfs.DFSConfigKeys;
 import org.apache.hadoop.hdfs.HdfsConfiguration;
 import org.apache.hadoop.http.HttpServer2;
@@ -32,6 +33,7 @@ import java.net.HttpURLConnection;
 import java.net.InetSocketAddress;
 import java.net.MalformedURLException;
 import java.net.URL;
+import java.net.URI;
 
 /**
  * A class to test the XFrameoptions of Namenode HTTP Server. We are not 
reusing
@@ -94,4 +96,24 @@ public class TestNameNodeHttpServerXFrame {
 conn.connect();
 return conn;
   }
+
+  @Test
+  public void testSecondaryNameNodeXFrame() throws IOException {
+Configuration conf = new HdfsConfiguration();
+FileSystem.setDefaultUri(conf, "hdfs://localhost:0");
+
+SecondaryNameNode sn = new SecondaryNameNode(conf);
+sn.startInfoServer();
+InetSocketAddress httpAddress = SecondaryNameNode.getHttpAddress(conf);
+
+URL url = URI.create("http://"; + httpAddress.getHostName()
++ ":" + httpAddress.getPort()).toURL();
+HttpURLConnection conn = (HttpURLConnection) url.openConnection();
+conn.connect();
+String xfoHeader = conn.getHeaderField("X-FRAME-OPTIONS");
+Assert.assertTrue("X-FRAME-OPTIONS is absent in the header",
+xfoHeader != null);
+Assert.assertTrue(xfoHeader.endsWith(HttpServer2.XFrameOption
+.SAMEORIGIN.toString()));
+  }
 }


-
To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-commi