Encryption of the Data at Rest

When any Template executes, all temporary files are stored in a repository folder. To prevent it from misuse, you may want to secure the folder. You can secure the repository folder by encrypting data in the folder. 

To encrypt the data, you need to configure the following:

  • Create Keystore using Keytool
  • Configure Keystore in Adeptia Connect

Multiple streams in data mapping are not supported when encryption at rest is enabled.

Creating Keystore using Keytool

  1. Open Command Prompt.
  2. Go to the directory where JRE is installed (for example, C:/Program Files/Java/jre8/bin).
  3. Run the following Keytool command to create a Keystore.

For Windows:

keytool.exe -genseckey -keystore <Keystore_path> -storetype <store_type> -storepass <Keystore_password> -keyalg AES -keysize 256 -alias <alias_name> -keypass <Key_password>

For example:

keytool.exe -genseckey -keystore <> -storetype JCEKS -storepass changeit -keyalg AES -keysize 256 -alias <> -keypass changeit

For Linux:

keytool -genseckey -keystore <Keystore_path> -storetype <store_type> -storepass <Keystore_password> -keyalg AES -keysize 256 -alias <alias_name> -keypass <Key_password>

For example:

keytool -genseckey -keystore <> -storetype JCEKS -storepass changeit -keyalg AES -keysize 256 -alias <> -keypass changeit

where,

         <Keystore_path> is the location of the Keystore. If the Keystore does not exist, the tool will create a new store. 

          <store_type> is the type of store. Only JCEKS is supported.

          <Keystore_password> is the password related to the Keystore. 

          <alias_name> is the name to be given to the newly created key.

          <Key_password> is the password protecting the use of the key.  

The Keystore is generated at the specified location and exit from the Command Prompt.

Configuring Keystore in Adeptia Connect

  1. Login to Adeptia Connect as an administrator.
  2. Go to Configure > Developer Studio.



  3. Click Proceed.
  4. Go to Administer > Setup > Application Settings > Update System Properties.
  5. Expand Systems > Data Encryption at rest.



  6. Set the value in the below parameters:

    Property Name
    Description
    abpm.security.data.encryption.rest.enableTo enable or disable data encryption at rest. The possible value can be either Yes or No.
    abpm.security.data.encryption.rest.keystoreLocationLocation of the Keystore that will be used for data encryption.
    abpm.security.data.encryption.rest.aliasAlias name for the key.
    abpm.security.data.encryption.rest.keystorePaswordPassword of the Keystore.
    abpm.security.data.encryption.rest.keyPasswordPassword of the Key.
  7. Click Save.
  8. Click Reload Configuration to reflect the changes.
  9. Restart Connect Kernel and Connect WebRunner.

However, after you enable the encryption, the data stored before you enabled the encryption remains in plaintext. Therefore, before enabling the encryption it is advisable to run the Encryption utility to encrypt the existing data present in the repository. If you do not encrypt the existing data, before enabling the encryption, repository data displayed on the GUIs may not be displayed correctly.

If due to any reason if you have not encrypted the existing data and have executed the transaction with encryption enabled, then in the repository folder the data will be a combination of plaintext and encrypted text. Therefore, you must encrypt plaintext separately. To do this:

  1. Move all the plaintext data in a separate folder. 
  2. Encrypt the folder using the Encryption utility. 
  3. After the records are encrypted successfully, copy the data of the encrypted folder in the repository.

After you have encrypted the data, enable the Encrypting data at rest feature. When the utility executes, you will have the encrypted data in the repository including the previous one.