This documentation is for WSO2 Carbon 4.4.0. View documentation for the latest release.
Page Comparison - Encrypting Passwords with Cipher Tool (v.38 vs v.39) - Carbon 4.4.0 - WSO2 Documentation
Due to a known issue do not use JDK1.8.0_151 with WSO2 products. Use JDK 1.8.0_144 until JDK 1.8.0_162-ea is released.

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Follow the steps given below.

  1. Download and install your product. For example, download and install WSO2 ESB.
  2. Open a command prompt and navigate to the <PRODUCT_HOME>/bin folder.
  3. Enable the Cipher Tool for WSO2 ESB the product by executing the following command:

    Code Block
    sh ciphertool.sh -Dconfigure 
  4. Execute the Cipher Tool using the following command:

    Code Block
    sh ciphertool.sh
  5. You will be asked to enter the primary key password, which is by default 'wso2carbon'. Enter the password and proceed.
  6. 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:

    Code Block
    Enter Plain Text Value :amqp://admin:[email protected]/carbon?brokerlist='tcp://localhost:5673'
  7. You will receive the encrypted value as shown below. For example:

    Code Block
    Encrypted value is: 
    gaMpTzAccMScaHllsZLXspm1i4HLI0M/srL5pB8jyknRKQ2zT7NuCvt1+qEkElRLgwlrohz3lkuE0KFuapXrCSs5pxfGMOLn4/k7dNs2SlwbsG8C++/
    ZfUuft1Sl6cqvDRM55fQwzCPfybl713HvKu3oDaJ9VKgSbvHlQj6zqzg=
  8. Open the cipher-text.properties file, stored in the <ESB<PRODUCT_HOME>/repository/conf/security folder.

  9. Add the encrypted password against the secret alias as shown below.

    Code Block
    connectionfactory.QueueConnectionFactory=cpw74SGeBNgAVpryqj5/xshSyW5BDW9d1UW0xMZ
    DxVeoa6RjyA1JRHutZ4SfzfSgSzy2GQJ/2jQIw70IeT5EQEAR8XLGaqlsE5IlNoe9dhyLiPXEPRGq4k/BgUQD
    YiBg0nU7wRsR8YXrvf+ak8ulX2yGv0Sf8=
  10. Now, open the jndi.properties file, stored in the <ESB_HOME>/repository/conf folder and replace the plain text element with the alias of the encrypted value as shown below.

    Code Block
    # register some connection factories
    # connectionfactory.[jndiname] = [ConnectionURL]
    connectionfactory.QueueConnectionFactory=secretAlias:connectionfactory.QueueConnectionFactory
    
    # register some queues in JNDI using the form
    # queue.[jndiName] = [physicalName]
    queue.MyQueue = example.MyQueue
    
    # register some topics in JNDI using the form
    # topic.[jndiName] = [physicalName]
    topic.MyTopic = example.MyTopic

...