Repository: hadoop Updated Branches: refs/heads/branch-2.8 22ef7c6bf -> bc87a293d
YARN-6890. Not display killApp button on UI if UI is unsecured but cluster is secured. Contributed by Junping Du Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/bc87a293 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/bc87a293 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/bc87a293 Branch: refs/heads/branch-2.8 Commit: bc87a293d91b6ca4f734300f8d91203393f2027a Parents: 22ef7c6 Author: Jian He <jia...@apache.org> Authored: Tue Aug 8 11:09:38 2017 -0700 Committer: Jian He <jia...@apache.org> Committed: Tue Aug 8 11:11:46 2017 -0700 ---------------------------------------------------------------------- .../hadoop/fs/CommonConfigurationKeysPublic.java | 3 +++ .../apache/hadoop/yarn/server/webapp/AppBlock.java | 14 +++++++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/bc87a293/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeysPublic.java ---------------------------------------------------------------------- diff --git a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeysPublic.java b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeysPublic.java index e127350..5b20d96 100644 --- a/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeysPublic.java +++ b/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/CommonConfigurationKeysPublic.java @@ -565,6 +565,9 @@ public class CommonConfigurationKeysPublic { public static final String HADOOP_SECURITY_DNS_NAMESERVER_KEY = "hadoop.security.dns.nameserver"; + public static final String HADOOP_HTTP_AUTHENTICATION_TYPE = + "hadoop.http.authentication.type"; + @Deprecated /** Only used by HttpServer. */ public static final String HADOOP_SSL_ENABLED_KEY = "hadoop.ssl.enabled"; http://git-wip-us.apache.org/repos/asf/hadoop/blob/bc87a293/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java ---------------------------------------------------------------------- diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java index 44ed223..3ffe485 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common/src/main/java/org/apache/hadoop/yarn/server/webapp/AppBlock.java @@ -29,6 +29,7 @@ import org.apache.commons.lang.StringEscapeUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.fs.CommonConfigurationKeys; import org.apache.hadoop.security.UserGroupInformation; import org.apache.hadoop.util.StringUtils; import org.apache.hadoop.yarn.api.ApplicationBaseProtocol; @@ -66,6 +67,8 @@ public class AppBlock extends HtmlBlock { protected ApplicationBaseProtocol appBaseProt; protected Configuration conf; protected ApplicationId appID = null; + private boolean unsecuredUI = true; + @Inject protected AppBlock(ApplicationBaseProtocol appBaseProt, ViewContext ctx, @@ -73,6 +76,9 @@ public class AppBlock extends HtmlBlock { super(ctx); this.appBaseProt = appBaseProt; this.conf = conf; + // check if UI is unsecured. + String httpAuth = conf.get(CommonConfigurationKeys.HADOOP_HTTP_AUTHENTICATION_TYPE); + this.unsecuredUI = (httpAuth != null) && httpAuth.equals("simple"); } @Override @@ -125,10 +131,16 @@ public class AppBlock extends HtmlBlock { setTitle(join("Application ", aid)); + // YARN-6890. for secured cluster allow anonymous UI access, application kill + // shouldn't be there. + boolean unsecuredUIForSecuredCluster = UserGroupInformation.isSecurityEnabled() + && this.unsecuredUI; + if (webUiType != null && webUiType.equals(YarnWebParams.RM_WEB_UI) && conf.getBoolean(YarnConfiguration.RM_WEBAPP_UI_ACTIONS_ENABLED, - YarnConfiguration.DEFAULT_RM_WEBAPP_UI_ACTIONS_ENABLED)) { + YarnConfiguration.DEFAULT_RM_WEBAPP_UI_ACTIONS_ENABLED) + && !unsecuredUIForSecuredCluster) { // Application Kill html.div() .button() --------------------------------------------------------------------- To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-commits-h...@hadoop.apache.org