Skip to content

Add info on how it works when multiple user stores are configured #3929

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: master-deprecated
Choose a base branch
from

Conversation

divyaamunugama
Copy link
Contributor

Purpose

$subject

Related issue: wso2/product-is#13473

Identity Server supports JDBC, LDAP, and Active Directory userstores with the
capability of configuring custom userstores. There are different userstore adapters called *Userstore managers*, which are used to connect
with these userstore types.
WSO2 Identity Server allows configuring multiple user stores to your system that are used to store users and their roles (Groups). Out of the box, the WSO2 Identity Server supports JDBC, LDAP, and Active Directory user stores with the capability of configuring custom user stores. Different user store adapters called **Userstore managers** are used to connect with these user store types.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
WSO2 Identity Server allows configuring multiple user stores to your system that are used to store users and their roles (Groups). Out of the box, the WSO2 Identity Server supports JDBC, LDAP, and Active Directory user stores with the capability of configuring custom user stores. Different user store adapters called **Userstore managers** are used to connect with these user store types.
WSO2 Identity Server allows configuring multiple user stores to your system that are used to store users and their groups. Out of the box, the WSO2 Identity Server supports JDBC, LDAP, and Active Directory user stores with the capability of configuring custom user stores. Different user store adapters called **Userstore managers** are used to connect with these user store types.

I think we can directly say groups here since now we have group role separation. This might get confused with the roles feature in latest IS versions


see, [Configure the Primary Userstore]({{base_path}}/deploy/configure-the-primary-user-store)
Learn more on how to [configure the primary serstore]({{base_path}}/deploy/configure-the-primary-user-store).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Learn more on how to [configure the primary serstore]({{base_path}}/deploy/configure-the-primary-user-store).
Learn more on how to [configure the primary userstore]({{base_path}}/deploy/configure-the-primary-user-store).

You can use the management console to create secondary userstores or
you can create them manually. These will be stored in an xml file with the
configurations corresponding to the secondary userstore.
You can easily set up any number of secondary user stores for your system. These user stores are specific to the created tenant and are not shared among multiple tenants. You can use the management console to create secondary user stores or manually create them. These will be stored in an XML file with the configurations corresponding to the secondary store.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
You can easily set up any number of secondary user stores for your system. These user stores are specific to the created tenant and are not shared among multiple tenants. You can use the management console to create secondary user stores or manually create them. These will be stored in an XML file with the configurations corresponding to the secondary store.
You can easily set up any number of secondary user stores for your system. These user stores are specific to the created tenant and are not shared among multiple tenants. You can use the console to create secondary user stores or manually create them. These will be stored in an XML file with the configurations corresponding to the secondary store.

We shouldn't mention above management console in latest versions right?


Example: Username: `PRIMARY/johnd`

2. WSO2 Identity Server checks the specified user stores for the availability of the user and authenticates the user.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
2. WSO2 Identity Server checks the specified user stores for the availability of the user and authenticates the user.
2. WSO2 Identity Server checks the specified user store for the availability of the user and authenticates the user.


## Initial set up

To set up the WSO2 identity Server to configure the user store preference order:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To set up the WSO2 identity Server to configure the user store preference order:
To set up the WSO2 Identity Server to configure the user store preference order:

Check for the ideal case here


1. Implement the `UserStorePreferenceOrderSupplier` interface with your own logic to retrieve the user store order.

Use the provided template to implement the [UserStorePreferenceOrderSupplier interface](https://github.com/wso2/carbon-kernel/blob/feeae3e4668b805c8d6d5e8c115897fa93b8a856/core/org.wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/config/UserStorePreferenceOrderSupplier.java?source=post_page-----cdadf43f9366--------------------------------).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's validate these links. Seems there are some query parameters. Is it intentional?

callback_factory = "org.wso2.carbon.identity.custom.callback.userstore.CustomUserStoreOrderCallbackFactory"
```

4. Restart the WSO2 Identity Server if it's already running.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems to be missing few steps where it instructs to build and patch the custom jar. Refer this for the complete guide.


To update the preference order:

1. On the WSO2 Identity Server Management Console, go to **Main** > **Registry** > **Browse**
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should validate whether these aligns with the latest IS versions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants