/** * Gets a HBase delegation token and stores it in the given Credentials. * * @return the same Credentials instance as the one given in parameter. */ public static Credentials obtainToken(Configuration hConf, Credentials credentials) { if (!User.isHBaseSecurityEnabled(hConf)) { return credentials; } try { Class c = Class.forName("org.apache.hadoop.hbase.security.token.TokenUtil"); Method method = c.getMethod("obtainToken", Configuration.class); Token<? extends TokenIdentifier> token = castToken(method.invoke(null, hConf)); credentials.addToken(token.getService(), token); return credentials; } catch (Exception e) { throw Throwables.propagate(e); } }
/** * Creates a {@link Credentials} that contains delegation tokens of the current user for all services that CDAP uses. */ public Credentials createCredentials() { try { Credentials refreshedCredentials = new Credentials(); if (User.isSecurityEnabled()) { YarnTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (User.isHBaseSecurityEnabled(yarnConf)) { HBaseTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (secureExplore) { HiveTokenUtils.obtainTokens(cConf, refreshedCredentials); JobHistoryServerTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (secureStore instanceof DelegationTokensUpdater) { String renewer = UserGroupInformation.getCurrentUser().getShortUserName(); ((DelegationTokensUpdater) secureStore).addDelegationTokens(renewer, refreshedCredentials); } YarnUtils.addDelegationTokens(yarnConf, locationFactory, refreshedCredentials); return refreshedCredentials; } catch (IOException ioe) { throw Throwables.propagate(ioe); } }
/** * Creates a {@link Credentials} that contains delegation tokens of the current user for all services that CDAP uses. */ public Credentials createCredentials() { try { Credentials refreshedCredentials = new Credentials(); if (User.isSecurityEnabled()) { YarnTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (User.isHBaseSecurityEnabled(yarnConf)) { HBaseTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (secureExplore) { HiveTokenUtils.obtainTokens(cConf, refreshedCredentials); JobHistoryServerTokenUtils.obtainToken(yarnConf, refreshedCredentials); } if (secureStore instanceof DelegationTokensUpdater) { String renewer = UserGroupInformation.getCurrentUser().getShortUserName(); ((DelegationTokensUpdater) secureStore).addDelegationTokens(renewer, refreshedCredentials); } YarnUtils.addDelegationTokens(yarnConf, locationFactory, refreshedCredentials); return refreshedCredentials; } catch (IOException ioe) { throw Throwables.propagate(ioe); } }
/** * Gets a HBase delegation token and stores it in the given Credentials. * * @return the same Credentials instance as the one given in parameter. */ public static Credentials obtainToken(Configuration hConf, Credentials credentials) { if (!User.isHBaseSecurityEnabled(hConf)) { return credentials; } try { Class c = Class.forName("org.apache.hadoop.hbase.security.token.TokenUtil"); Method method = c.getMethod("obtainToken", Configuration.class); Token<? extends TokenIdentifier> token = castToken(method.invoke(null, hConf)); credentials.addToken(token.getService(), token); return credentials; } catch (Exception e) { throw Throwables.propagate(e); } }