Class AzureKeyManagementClient
java.lang.Object
org.apache.iceberg.azure.keymanagement.AzureKeyManagementClient
- All Implemented Interfaces:
Closeable,Serializable,AutoCloseable,KeyManagementClient
Azure key management client which connects to Azure Key Vault.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.iceberg.encryption.KeyManagementClient
KeyManagementClient.KeyGenerationResult -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidinitialize(Map<String, String> properties) Initialize the KMS client with given properties.unwrapKey(ByteBuffer wrappedKey, String wrappingKeyId) Unwrap a secret key, using a wrapping/master key which is stored in KMS and referenced by an ID.wrapKey(ByteBuffer key, String wrappingKeyId) Wrap a secret key, using a wrapping/master key which is stored in KMS and referenced by an ID.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.iceberg.encryption.KeyManagementClient
close, generateKey, supportsKeyGeneration
-
Constructor Details
-
AzureKeyManagementClient
public AzureKeyManagementClient()
-
-
Method Details
-
initialize
Description copied from interface:KeyManagementClientInitialize the KMS client with given properties.- Specified by:
initializein interfaceKeyManagementClient- Parameters:
properties- kms client properties
-
wrapKey
Description copied from interface:KeyManagementClientWrap a secret key, using a wrapping/master key which is stored in KMS and referenced by an ID. Wrapping means encryption of the secret key with the master key, and adding optional KMS-specific metadata that allows the KMS to decrypt the secret key in an unwrapping call.- Specified by:
wrapKeyin interfaceKeyManagementClient- Parameters:
key- a secret key being wrappedwrappingKeyId- a key ID that represents a wrapping key stored in KMS- Returns:
- wrapped key material
-
unwrapKey
Description copied from interface:KeyManagementClientUnwrap a secret key, using a wrapping/master key which is stored in KMS and referenced by an ID.- Specified by:
unwrapKeyin interfaceKeyManagementClient- Parameters:
wrappedKey- wrapped key material (encrypted key and optional KMS metadata, returned by the wrapKey method)wrappingKeyId- a key ID that represents a wrapping key stored in KMS- Returns:
- raw key bytes
-