Package org.apache.iceberg.aws
Class AwsKeyManagementClient
java.lang.Object
org.apache.iceberg.aws.AwsKeyManagementClient
- All Implemented Interfaces:
Closeable,Serializable,AutoCloseable,org.apache.iceberg.encryption.KeyManagementClient
public class AwsKeyManagementClient
extends Object
implements org.apache.iceberg.encryption.KeyManagementClient
Key management client implementation that uses AWS Key Management Service. To be used for
encrypting/decrypting keys with a KMS-managed master key, (by referencing its key ID), and for
the generation of new encryption keys.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.iceberg.encryption.KeyManagementClient
org.apache.iceberg.encryption.KeyManagementClient.KeyGenerationResult -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()org.apache.iceberg.encryption.KeyManagementClient.KeyGenerationResultgenerateKey(String wrappingKeyId) voidinitialize(Map<String, String> properties) booleanunwrapKey(ByteBuffer wrappedKey, String wrappingKeyId) wrapKey(ByteBuffer key, String wrappingKeyId)
-
Constructor Details
-
AwsKeyManagementClient
public AwsKeyManagementClient()
-
-
Method Details
-
initialize
- Specified by:
initializein interfaceorg.apache.iceberg.encryption.KeyManagementClient
-
wrapKey
- Specified by:
wrapKeyin interfaceorg.apache.iceberg.encryption.KeyManagementClient
-
supportsKeyGeneration
public boolean supportsKeyGeneration()- Specified by:
supportsKeyGenerationin interfaceorg.apache.iceberg.encryption.KeyManagementClient
-
generateKey
public org.apache.iceberg.encryption.KeyManagementClient.KeyGenerationResult generateKey(String wrappingKeyId) - Specified by:
generateKeyin interfaceorg.apache.iceberg.encryption.KeyManagementClient
-
unwrapKey
- Specified by:
unwrapKeyin interfaceorg.apache.iceberg.encryption.KeyManagementClient
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceorg.apache.iceberg.encryption.KeyManagementClient
-