Greg Senia created YARN-4006: -------------------------------- Summary: YARN ATS Alternate Kerberos HTTP Authentication Changes Key: YARN-4006 URL: https://issues.apache.org/jira/browse/YARN-4006 Project: Hadoop YARN Issue Type: Improvement Components: security, timelineserver Affects Versions: 2.7.0, 2.6.0, 2.5.0, 2.8.0 Reporter: Greg Senia
When attempting to use The Hadoop Alternate Authentication Classes. They do not exactly work with what was built with https://issues.apache.org/jira/browse/YARN-1935. I went ahead and made the following changes to support using a Custom AltKerberos DelegationToken custom class. Changes to: TimelineAuthenticationFilterInitializer.class String authType = filterConfig.get(AuthenticationFilter.AUTH_TYPE); LOG.info("AuthType Configured: "+authType); if (authType.equals(PseudoAuthenticationHandler.TYPE)) { filterConfig.put(AuthenticationFilter.AUTH_TYPE, PseudoDelegationTokenAuthenticationHandler.class.getName()); LOG.info("AuthType: PseudoDelegationTokenAuthenticationHandler"); } else if (authType.equals(KerberosAuthenticationHandler.TYPE) || (UserGroupInformation.isSecurityEnabled() && conf.get("hadoop.security.authentication").equals(KerberosAuthenticationHandler.TYPE))) { if (!(authType.equals(KerberosAuthenticationHandler.TYPE))) { filterConfig.put(AuthenticationFilter.AUTH_TYPE, authType); LOG.info("AuthType: "+authType); } else { filterConfig.put(AuthenticationFilter.AUTH_TYPE, KerberosDelegationTokenAuthenticationHandler.class.getName()); LOG.info("AuthType: KerberosDelegationTokenAuthenticationHandler"); } // Resolve _HOST into bind address String bindAddress = conf.get(HttpServer2.BIND_ADDRESS); String principal = filterConfig.get(KerberosAuthenticationHandler.PRINCIPAL); if (principal != null) { try { principal = SecurityUtil.getServerPrincipal(principal, bindAddress); } catch (IOException ex) { throw new RuntimeException( "Could not resolve Kerberos principal name: " + ex.toString(), ex); } filterConfig.put(KerberosAuthenticationHandler.PRINCIPAL, principal); } } -- This message was sent by Atlassian JIRA (v6.3.4#6332)