- Download and install a WSO2 product.
- Open a command prompt and navigate to the
You must first enable the Cipher tool for the product by executing the following command:
sh ciphertool.sh -Dconfigure
If you are using the cipher tool for the first time, this command will first initialize the tool for your product. The tool will then encrypt any plain text passwords that are specified in the
cipher-text.propertiesfile for automatic encryption. See the automated encryption process for more information.
Now, you can start encrypting the admin password manually. Execute the Cipher tool using the following command:
- You will be asked to enter the primary key password, which is by default 'wso2carbon'. Enter the password and proceed.
You will now be asked to enter the plain text password that you want to encrypt. Enter the following element as the password and proceed:
Enter Plain Text Value :admin
Note that in certain configuration files, the password that requires encryption may not be specified as a single value as it is in the log4j.properties file. For example, the jndi.properties file used in WSO2 ESB contains the password in the connection URL. In such cases, you need to encrypt the entire connection URL as explained here.
You will receive the encrypted value. For example:
Encrypted value is: gaMpTzAccMScaHllsZLXspm1i4HLI0M/srL5pB8jyknRKQ2zT7NuCvt1+qEkElRLgwlrohz3lkuE0KFuapXrCSs5pxfGMOLn4/k7dNs2SlwbsG8C++/ ZfUuft1Sl6cqvDRM55fQwzCPfybl713HvKu3oDaJ9VKgSbvHlQj6zqzg=
cipher-text.propertiesfile, stored in the
Add the encrypted password against the secret alias as shown below.
log4j.appender.LOGEVENT.password=cpw74SGeBNgAVpryqj5/xshSyW5BDW9d1UW0xMZ DxVeoa6RjyA1JRHutZ4SfzfSgSzy2GQJ/2jQIw70IeT5EQEAR8XLGaqlsE5IlNoe9dhyLiPXEPRGq4k/BgUQD YiBg0nU7wRsR8YXrvf+ak8ulX2yGv0Sf8=
Now, open the
log4j.propertiesfile, stored in the
<PRODUCT_HOME>/repository/conffolder and replace the plain text element with the alias of the encrypted value as shown below.
# LOGEVENT is set to be a LogEventAppender using a PatternLayout to send logs to LOGEVENT .... log4j.appender.LOGEVENT.password=secretAlias:log4j.appender.LOGEVENT.password ....