public class PropertiesDrivenCryptoFactory extends Object implements EncryptionPropertiesFactory, DecryptionPropertiesFactory
| Modifier and Type | Field and Description |
|---|---|
static String |
COLUMN_KEYS_PROPERTY_NAME
List of columns to encrypt, with master key IDs (see HIVE-21848).
|
static boolean |
COMPLETE_COLUMN_ENCRYPTION_DEFAULT |
static String |
COMPLETE_COLUMN_ENCRYPTION_PROPERTY_NAME
Encrypt unlisted columns using footer key.
|
static String |
ENCRYPTION_ALGORITHM_DEFAULT |
static String |
ENCRYPTION_ALGORITHM_PROPERTY_NAME
Parquet encryption algorithm.
|
static String |
FOOTER_KEY_PROPERTY_NAME
Master key ID for footer encryption/signing.
|
static boolean |
PLAINTEXT_FOOTER_DEFAULT |
static String |
PLAINTEXT_FOOTER_PROPERTY_NAME
Write files with plaintext footer.
|
static String |
UNIFORM_KEY_PROPERTY_NAME
Master key ID for uniform encryption (same key for all columns and footer).
|
CRYPTO_FACTORY_CLASS_PROPERTY_NAMECRYPTO_FACTORY_CLASS_PROPERTY_NAME| Constructor and Description |
|---|
PropertiesDrivenCryptoFactory() |
| Modifier and Type | Method and Description |
|---|---|
FileDecryptionProperties |
getFileDecryptionProperties(org.apache.hadoop.conf.Configuration hadoopConfig,
org.apache.hadoop.fs.Path filePath)
Get FileDecryptionProperties object which is created by the implementation of this interface.
|
FileEncryptionProperties |
getFileEncryptionProperties(org.apache.hadoop.conf.Configuration fileHadoopConfig,
org.apache.hadoop.fs.Path tempFilePath,
WriteSupport.WriteContext fileWriteContext)
Get FileEncryptionProperties object which is created by the implementation of this interface.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitloadFactoryloadFactorypublic static final String COLUMN_KEYS_PROPERTY_NAME
public static final String FOOTER_KEY_PROPERTY_NAME
public static final String COMPLETE_COLUMN_ENCRYPTION_PROPERTY_NAME
public static final String UNIFORM_KEY_PROPERTY_NAME
public static final String ENCRYPTION_ALGORITHM_PROPERTY_NAME
public static final String PLAINTEXT_FOOTER_PROPERTY_NAME
public static final String ENCRYPTION_ALGORITHM_DEFAULT
public static final boolean PLAINTEXT_FOOTER_DEFAULT
public static final boolean COMPLETE_COLUMN_ENCRYPTION_DEFAULT
public FileEncryptionProperties getFileEncryptionProperties(org.apache.hadoop.conf.Configuration fileHadoopConfig, org.apache.hadoop.fs.Path tempFilePath, WriteSupport.WriteContext fileWriteContext) throws ParquetCryptoRuntimeException
EncryptionPropertiesFactorygetFileEncryptionProperties in interface EncryptionPropertiesFactoryfileHadoopConfig - Configuration that is used to pass the needed information, e.g. KMS uritempFilePath - File path of the parquet file being written.
Can be used for AAD prefix creation, key material management, etc.
Implementations must not presume the path is permanent,
as the file can be moved or renamed laterfileWriteContext - WriteContext to provide information like schema to build the FileEncryptionPropertiesParquetCryptoRuntimeException - if there is an exception while creating the objectpublic FileDecryptionProperties getFileDecryptionProperties(org.apache.hadoop.conf.Configuration hadoopConfig, org.apache.hadoop.fs.Path filePath) throws ParquetCryptoRuntimeException
DecryptionPropertiesFactorygetFileDecryptionProperties in interface DecryptionPropertiesFactoryhadoopConfig - Configuration that is used to pass the needed information, e.g. KMS urifilePath - File path of the parquet file
Can be used for AAD prefix verification, part of key metadata etcParquetCryptoRuntimeException - if there is an exception while creating the objectCopyright © 2023 The Apache Software Foundation. All rights reserved.