Class KeyEncryptionKeyAsyncClient

java.lang.Object
com.azure.security.keyvault.keys.cryptography.CryptographyAsyncClient
com.azure.security.keyvault.keys.cryptography.KeyEncryptionKeyAsyncClient
All Implemented Interfaces:
com.azure.core.cryptography.AsyncKeyEncryptionKey

public final class KeyEncryptionKeyAsyncClient extends CryptographyAsyncClient implements com.azure.core.cryptography.AsyncKeyEncryptionKey
A key client which is used to asynchronously wrap or unwrap another key.

When a KeyEncryptionKeyAsyncClient gets created using a Azure Key Vault key identifier, the first time a cryptographic operation is attempted, the client will attempt to retrieve the key material from the service, cache it, and perform all future cryptographic operations locally, deferring to the service when that's not possible. If key retrieval and caching fails because of a non-retryable error, the client will not make any further attempts and will fall back to performing all cryptographic operations on the service side. Conversely, when a KeyEncryptionKeyAsyncClient created using a JSON Web Key, all cryptographic operations will be performed locally.

  • Method Details

    • getKeyId

      public Mono<String> getKeyId()
      Get the identifier of the key to use for cryptography operations.
      Specified by:
      getKeyId in interface com.azure.core.cryptography.AsyncKeyEncryptionKey
      Returns:
      A Mono containing the key identifier.
    • wrapKey

      public Mono<byte[]> wrapKey(String algorithm, byte[] key)
      Specified by:
      wrapKey in interface com.azure.core.cryptography.AsyncKeyEncryptionKey
    • unwrapKey

      public Mono<byte[]> unwrapKey(String algorithm, byte[] encryptedKey)
      Specified by:
      unwrapKey in interface com.azure.core.cryptography.AsyncKeyEncryptionKey