org.apache.hadoop.mapreduce.v2.hs
Class JHSDelegationTokenSecretManager

java.lang.Object
  extended by org.apache.hadoop.security.token.SecretManager<TokenIdent>
      extended by org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>
          extended by org.apache.hadoop.mapreduce.v2.hs.JHSDelegationTokenSecretManager

@InterfaceAudience.Private
@InterfaceStability.Unstable
public class JHSDelegationTokenSecretManager
extends org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>

A MapReduce specific delegation token secret manager. The secret manager is responsible for generating and accepting the password for each token.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager
org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager.DelegationTokenInformation
 
Nested classes/interfaces inherited from class org.apache.hadoop.security.token.SecretManager
org.apache.hadoop.security.token.SecretManager.InvalidToken
 
Field Summary
 
Fields inherited from class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager
allKeys, currentId, currentTokens, delegationTokenSequenceNumber, noInterruptsLock, running, storeTokenTrackingId
 
Constructor Summary
JHSDelegationTokenSecretManager(long delegationKeyUpdateInterval, long delegationTokenMaxLifetime, long delegationTokenRenewInterval, long delegationTokenRemoverScanInterval, HistoryServerStateStoreService store)
          Create a secret manager
 
Method Summary
 org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier createIdentifier()
           
 void recover(HistoryServerStateStoreService.HistoryServerState state)
           
protected  void removeStoredMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey key)
           
protected  void removeStoredToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId)
           
protected  void storeNewMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey key)
           
protected  void storeNewToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId, long renewDate)
           
protected  void updateStoredToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId, long renewDate)
           
 
Methods inherited from class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager
addKey, addPersistedDelegationToken, cancelToken, checkToken, createPassword, createSecretKey, decodeTokenIdentifier, getAllKeys, getCurrentKeyId, getDelegationKey, getDelegationTokenSeqNum, getTokenInfo, getTokenTrackingId, getTrackingIdIfEnabled, incrementCurrentKeyId, incrementDelegationTokenSeqNum, isRunning, logExpireToken, logUpdateMasterKey, renewToken, reset, retrievePassword, setCurrentKeyId, setDelegationTokenSeqNum, startThreads, stopThreads, storeDelegationKey, storeToken, updateDelegationKey, updateToken, verifyToken
 
Methods inherited from class org.apache.hadoop.security.token.SecretManager
checkAvailableForRead, createPassword, generateSecret, retriableRetrievePassword
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JHSDelegationTokenSecretManager

public JHSDelegationTokenSecretManager(long delegationKeyUpdateInterval,
                                       long delegationTokenMaxLifetime,
                                       long delegationTokenRenewInterval,
                                       long delegationTokenRemoverScanInterval,
                                       HistoryServerStateStoreService store)
Create a secret manager

Parameters:
delegationKeyUpdateInterval - the number of seconds for rolling new secret keys.
delegationTokenMaxLifetime - the maximum lifetime of the delegation tokens
delegationTokenRenewInterval - how often the tokens must be renewed
delegationTokenRemoverScanInterval - how often the tokens are scanned for expired tokens
store - history server state store for persisting state
Method Detail

createIdentifier

public org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier createIdentifier()
Specified by:
createIdentifier in class org.apache.hadoop.security.token.SecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>

storeNewMasterKey

protected void storeNewMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey key)
                          throws IOException
Overrides:
storeNewMasterKey in class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>
Throws:
IOException

removeStoredMasterKey

protected void removeStoredMasterKey(org.apache.hadoop.security.token.delegation.DelegationKey key)
Overrides:
removeStoredMasterKey in class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>

storeNewToken

protected void storeNewToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId,
                             long renewDate)
Overrides:
storeNewToken in class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>

removeStoredToken

protected void removeStoredToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId)
                          throws IOException
Overrides:
removeStoredToken in class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>
Throws:
IOException

updateStoredToken

protected void updateStoredToken(org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier tokenId,
                                 long renewDate)
Overrides:
updateStoredToken in class org.apache.hadoop.security.token.delegation.AbstractDelegationTokenSecretManager<org.apache.hadoop.mapreduce.v2.api.MRDelegationTokenIdentifier>

recover

public void recover(HistoryServerStateStoreService.HistoryServerState state)
             throws IOException
Throws:
IOException


Copyright © 2014 Apache Software Foundation. All Rights Reserved.