Over a million developers have joined DZone.

Adding Secondary User Stores for WSO2 Products

DZone's Guide to

Adding Secondary User Stores for WSO2 Products

· Integration Zone ·
Free Resource

The Future of Enterprise Integration: Learn how organizations are re-architecting their integration strategy with data-driven app integration for true digital transformation.

By default, WSO2 products have a single user store. In this post we will configure Secondary User Stores (ReadWriteLDAPUserStoreManager). You can also configure your own customized user stores and connect them with the products as secondary stores. In my previous post[1], we created new custom LDAP and we will going to use that LDAP as our secondary user stores. I will be using WSO2 ESB 4.8.0 as wso2 product

We need to start your LDAP. (Here is my LDAP configure information), I will be using Apache Directory Studio 1.5.3 for LDAP browsing


Here the Connection Name name is ‘uid=admin,ou=system’ password ‘admin’ (but default password is ‘secret’)


Make sure your LDAP is started and running


Now we start our work for configuring Secondary User Stores

1. Starting WSO2 ESB from ‘wso2esb-4.8.0\bin\wso2server.bat’ \.sh

2. Then login to ‘Management Console’ by username and password as ‘admin’ and ‘admin’

3. Go to click User Store Management sub menu under Configure menu

4. Initially, there are no secondary user stores.(You cannot update the PRIMARY user store at run time, so it is not visible on this page)

5. Click Add Secondary User Store.


6. The User Store Manager page opens. Enter a unique domain name and fill in the rest of the data.


Here is own secondary user store


Now we will check user and role (group) list



LDAP explorer


[1] http://madhukaudantha.blogspot.com/2014/01/create-you-own-ldap-from-apache.html

Make your mark on the industry’s leading annual report. Fill out the State of API Integration 2019 Survey and receive $25 to the Cloud Elements store.


Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}