Encryption of secure information
Product 360 supports the encryption of secure information like passwords in configuration files. The encryption will be executed only if the secure information in the configuration files is enclosed by corresponding markers.
There's a default implementation using AES-256. It is used if encryption is needed and no custom implementation is available.
Custom implementation
Implementation
The interface EncryptionService provided by com.heiler.ppm.encryption has to be implemented:
public
interface
EncryptionService
{
/**
* Encrypts the given {@link CharSequence}.
* @param charSequenceToEncrypt The {@link CharSequence} to be encrypted. Must not be <code>null</code>.
* @return The encrypted {@link CharSequence}, never <code>null</code>.
*/
public
CharSequence encrypt( CharSequence charSequenceToEncrypt )
throws
EncryptionServiceException;
/**
* Decrypts the given {@link CharSequence}.
* @param charSequenceToDecrypt The {@link CharSequence} to be decrypted. Must not be <code>null</code>.
* @return The decrypted {@link CharSequence}, never <code>null</code>.
*/
public
CharSequence decrypt( CharSequence charSequenceToDecrypt )
throws
EncryptionServiceException;
}
Note: the implementation has to be provided in all server components like Product 360 application server, Control Center, Audit Trail, ... which you're using.
Installation
The compiled EncryptionService implementation has to be provided in the classpath, the start parameter ppm.encryptionService contains the name of the class and tells the corresponding application to use that implementation.
Example:
wrapper.java.additional.
40
= -Dppm.encryptionService = custom.encryption.encryptionService