This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Changing User Passwords in the Carbon Database

If an admin user forgets his password, he cannot retrieve it using the Management Console. In such a scenario, has to change the password by running the chpasswd script located in <PRODUCT_HOME>/bin folder on the machine that hosts the Carbon server.

Note

Before executing this script, the Carbon instance should be shut down.

In order to change a user's password, you need to provide the following information:

  • The Carbon database URL: By default, WSO2 Carbon is shipped with H2 database so the default URL is jdbc:h2:repository/database/WSO2CARBON_DB;DB_CLOSE_ON_EXIT=FALSE. This URL may change if a different database was specified during the installation. Then the URL will be in the form of jdbc:h2:<PRODUCT_HOME>/repository/database/WSO2CARBON_DB.
  • The Database driver class: For the default H2 database, the driver will be automatically picked up by the system. If a different database is used, the driver class needs to be specified.
  • The database's username and password: Again for the default H2 database, the default username and password will be used by the system. However, if a different username/password is used, you are required to reset the admin password.
  • The username and new password of the user whose password is to be changed: If you do not provide these as command line arguments, you will be prompted for it during execution.

The command line options available for chpasswd is as follows:

Command Line Option

Description

Mandatory?

--db-url

The database URL

Yes

--db-driver

The database driver class

No

--db-username

The username for the database

No

--db-password

The password for the database

No

--username

The username of the user whose password is to be changed.
If this is not given, you will be prompted for this field later.

No

--new-password

The new password of the user whose password is to be changed.
If this is not given, you will be prompted for this field later.

No

For example,

chpasswd --db-url "jdbc:h2:$CARBON_HOME/repository/database/WSO2CARBON_DB"

On Windows: chpasswd.bat --db-url "jdbc:h2:$CARBON_HOME\repsitory\database\WSO2CARBON_DB"

The following message is displayed if the password is updated successfully:

Password of user [username] updated successfully

Note

If the database path includes directory names with spaces, the whole URL needs to be included within quotations.