-
Notifications
You must be signed in to change notification settings - Fork 667
Store multiValued attributes as separate claims instead of comma separated claims #4271
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
Store multiValued attributes as separate claims instead of comma separated claims #4271
Conversation
6ec7e29
to
c16277d
Compare
...wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/jdbc/JDBCUserStoreManager.java
Outdated
Show resolved
Hide resolved
...bon.user.core/src/main/java/org/wso2/carbon/user/core/jdbc/UniqueIDJDBCUserStoreManager.java
Show resolved
Hide resolved
3383704
to
3fbc290
Compare
3d05f1b
to
b1daea2
Compare
…dle possible execptions during tenant creation
b1daea2
to
bf7e108
Compare
PR builder started |
PR builder completed |
PR builder completed |
PR builder started |
The failing test case is ![]() The failed test case is an intermittent test case. Verified locally ![]() It has been passed for the different test runs - https://github.com/sadilchamishka/product-is/actions/runs/14483482522/artifacts/2953209554 ![]() |
PR builder completed |
...wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/jdbc/JDBCUserStoreManager.java
Outdated
Show resolved
Hide resolved
...wso2.carbon.user.core/src/main/java/org/wso2/carbon/user/core/jdbc/JDBCUserStoreManager.java
Outdated
Show resolved
Hide resolved
The PR is merged due to the failing test case is not related to the code changes. The code changes are mostly related user addition flows. The user retrieval flows not get affected as it only engaged for multi valued attributes |
Purpose
Introduced a method to find the multiValued attributes of the given tenant. It will return the corresponding mapped attribute related to the current user store domain. https://github.com/wso2/carbon-kernel/pull/4271/files#diff-4995941eb71f197712744fdc59e0dd9446e275f592ac931a2630555c0d4b1ec2R5338
When retrieving data from the JDBC user store, only the multi valued attributes are concatenated by the multi attribute separator of the corresponding user store domain.
When creating or updating a user with multi valued claims, it will be received as comma separated string to the user store manager. As the attributes are stored with same attribute key, all the received multi valued attributes are deleted first. Then add the multi valued attributes which received. (This happen as bulk operations within a single transaction)
Iterate over the each multi valued attribute and store as separate attribute.
Related Issues
Depends on