Class DataEncryptionKeyManagerImpl

java.lang.Object
org.gridgain.internal.encryption.storage.DataEncryptionKeyManagerImpl
All Implemented Interfaces:
org.apache.ignite.internal.event.EventListener<org.gridgain.internal.encryption.event.EncryptionEventParameters>, org.apache.ignite.internal.lang.Debuggable, org.apache.ignite.internal.manager.IgniteComponent, org.gridgain.internal.encryption.DataEncryptionKeyManager

public class DataEncryptionKeyManagerImpl extends Object implements org.gridgain.internal.encryption.DataEncryptionKeyManager, org.apache.ignite.internal.event.EventListener<org.gridgain.internal.encryption.event.EncryptionEventParameters>
Serves for managing data encryption keys and related datastructure located in the heap.
  • Constructor Details

    • DataEncryptionKeyManagerImpl

      public DataEncryptionKeyManagerImpl(KeyStorage storage, org.gridgain.internal.encryption.EncryptionManager encryptionManager, org.apache.ignite.internal.failure.FailureProcessor failureProcessor)
      Constructor.
      Parameters:
      storage - Key chain storage.
      encryptionManager - Encryption manager.
      failureProcessor - Failure processor that is used to handle critical errors.
  • Method Details

    • activeKey

      public org.gridgain.internal.encryption.provider.DataEncryptionKey activeKey(String chainId)
      Specified by:
      activeKey in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • getKey

      public org.gridgain.internal.encryption.provider.DataEncryptionKey getKey(String chainId, int keyId)
      Specified by:
      getKey in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • keyChainExists

      public boolean keyChainExists(String chainId)
      Specified by:
      keyChainExists in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • createKeyChain

      public boolean createKeyChain(String chainId, org.gridgain.internal.encryption.provider.DataEncryptionKey key, @Nullable @Nullable String providerName)
      Specified by:
      createKeyChain in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • addKey

      public void addKey(String chainId, org.gridgain.internal.encryption.provider.DataEncryptionKey newKey)
      Specified by:
      addKey in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • changeActiveKey

      public void changeActiveKey(String chainId, int keyId)
      Specified by:
      changeActiveKey in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • remove

      public void remove(String chainId)
      Specified by:
      remove in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • rotateKey

      public void rotateKey(String chainId)
      Specified by:
      rotateKey in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • registerRotationListener

      public void registerRotationListener(org.gridgain.internal.encryption.DekRotationListener listener)
      Specified by:
      registerRotationListener in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • unregisterRotationListener

      public void unregisterRotationListener(org.gridgain.internal.encryption.DekRotationListener listener)
      Specified by:
      unregisterRotationListener in interface org.gridgain.internal.encryption.DataEncryptionKeyManager
    • startAsync

      public CompletableFuture<Void> startAsync(org.apache.ignite.internal.manager.ComponentContext componentContext)
      Specified by:
      startAsync in interface org.apache.ignite.internal.manager.IgniteComponent
    • stopAsync

      public CompletableFuture<Void> stopAsync(org.apache.ignite.internal.manager.ComponentContext componentContext)
      Specified by:
      stopAsync in interface org.apache.ignite.internal.manager.IgniteComponent
    • notify

      public CompletableFuture<Boolean> notify(org.gridgain.internal.encryption.event.EncryptionEventParameters parameters)
      Specified by:
      notify in interface org.apache.ignite.internal.event.EventListener<org.gridgain.internal.encryption.event.EncryptionEventParameters>