Class BaseContainerTokenSecretManager
java.lang.Object
org.apache.hadoop.security.token.SecretManager<org.apache.hadoop.yarn.security.ContainerTokenIdentifier>
org.apache.hadoop.yarn.server.security.BaseContainerTokenSecretManager
public class BaseContainerTokenSecretManager
extends org.apache.hadoop.security.token.SecretManager<org.apache.hadoop.yarn.security.ContainerTokenIdentifier>
SecretManager for ContainerTokens. Extended by both RM and NM and hence is
present in yarn-server-common package.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.hadoop.security.token.SecretManager
org.apache.hadoop.security.token.SecretManager.InvalidToken -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final longprotected MasterKeyDataTHE masterKey.protected final Lockprotected final ReadWriteLockprotected intprotected final Lock -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hadoop.yarn.security.ContainerTokenIdentifierUsed by the RPC layer.protected MasterKeyDatabyte[]createPassword(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier) byte[]retrievePassword(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier) protected byte[]retrievePasswordInternal(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier, MasterKeyData masterKey) Methods inherited from class org.apache.hadoop.security.token.SecretManager
checkAvailableForRead, createPassword, createSecretKey, generateSecret, retriableRetrievePassword, update, validateSecretKeyLength
-
Field Details
-
serialNo
protected int serialNo -
readWriteLock
-
readLock
-
writeLock
-
currentMasterKey
THE masterKey. ResourceManager should persist this and recover it on restart instead of generating a new key. The NodeManagers get it from the ResourceManager and use it for validating container-tokens. -
containerTokenExpiryInterval
protected final long containerTokenExpiryInterval
-
-
Constructor Details
-
BaseContainerTokenSecretManager
public BaseContainerTokenSecretManager(org.apache.hadoop.conf.Configuration conf)
-
-
Method Details
-
createNewMasterKey
-
getCurrentKey
-
createPassword
public byte[] createPassword(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier) - Specified by:
createPasswordin classorg.apache.hadoop.security.token.SecretManager<org.apache.hadoop.yarn.security.ContainerTokenIdentifier>
-
retrievePassword
public byte[] retrievePassword(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier) throws org.apache.hadoop.security.token.SecretManager.InvalidToken - Specified by:
retrievePasswordin classorg.apache.hadoop.security.token.SecretManager<org.apache.hadoop.yarn.security.ContainerTokenIdentifier>- Throws:
org.apache.hadoop.security.token.SecretManager.InvalidToken
-
retrievePasswordInternal
protected byte[] retrievePasswordInternal(org.apache.hadoop.yarn.security.ContainerTokenIdentifier identifier, MasterKeyData masterKey) throws org.apache.hadoop.security.token.SecretManager.InvalidToken - Throws:
org.apache.hadoop.security.token.SecretManager.InvalidToken
-
createIdentifier
public org.apache.hadoop.yarn.security.ContainerTokenIdentifier createIdentifier()Used by the RPC layer.- Specified by:
createIdentifierin classorg.apache.hadoop.security.token.SecretManager<org.apache.hadoop.yarn.security.ContainerTokenIdentifier>
-