Hi Thomas,

Did you override doCheckExistingUser method in your custom user store
manager? In order to view the roles list of the user, following methods
should be overridden.


   -

   doCheckExistingUser

   -

   doGetExternalRoleListOfUser

   -

   doGetInternalRoleListOfUser



If the issue still occurs after overriding the doCheckExistingUser method,
please attach your sample code. So we can help you faster.

Thanks
Isura.

On Fri, Aug 18, 2017 at 3:09 PM, Thomas LEGRAND <
[email protected]> wrote:

> Hello again!
>
> During my tests, I "reinstalled" a new Identity Server v5.3.0 where I let
> the default configuration for the primary user store.
> I configured my custom secondary user store which retrieves data from a
> database. This custom user store is implemented by extending te
> AbstractUserStoreManager class and I generated a OSGi bundle which I
> dropped in the repository/components/dropins directory.
>
> So I can see my list of users coming from this user store when I display
> it from the identity server. But, when I want to display the roles of a
> suer, I noticed that the primary user store is called (in my case, that was
> the default org.wso2.carbon.user.core.ldap.ReadWriteLDAPUserStoreManager
> configured in the user-mgt.xml configuration file) to check if the user
> existed and to retrieve its roles.
>
> Did I miss something in my implementation of the user store to have the
> effect of the primary user store taking the lead to retrieve the roles
> physically located on the secondary user store?
>
> Regards,
>
> Thomas
>
> 2017-08-17 11:22 GMT+02:00 Thomas LEGRAND <[email protected]>:
>
>> Hello,
>>
>> I really don't understand why my "external" roles don't appear in the
>> list and why no role methods are called in my connector because, when I
>> configure a LDAP one, I can see the roles retrieved from the LDAP are
>> listed with the internal ones.
>>
>> I set the log level to DEBUG to see that the LDAP user store is calling
>> the internal role retrieval method before checking if the user exists:
>>
>> [2017-08-17 11:18:00,647] DEBUG 
>> {org.wso2.carbon.user.core.common.AbstractUserStoreManager}
>> -  Retrieving internal roles for user name :  a.bresson and search filter *
>> [2017-08-17 11:18:00,648] DEBUG {org.wso2.carbon.user.core.lda
>> p.ReadOnlyLDAPUserStoreManager} -  Searching for user a.bresson
>>
>> But in my case, the user check method isn't even called!
>>
>> If I continue with the logs, I can see that:
>>
>> [2017-08-17 11:18:00,653] DEBUG {org.wso2.carbon.user.core.lda
>> p.ReadOnlyLDAPUserStoreManager} -  Reading roles with the
>> memberOfProperty Property: memberOf
>>
>> Following this source code [1], it seems that it executes the method to
>> retrieve the external roles. On my side, in my own connector, that does not
>> even go there because it doesn't even check if the user exists.
>>
>> What am I missing?
>>
>> Regards,
>>
>> Thomas
>>
>> [1] https://github.com/biliroy/carbon4-kernel/blob/master/
>> core/org.wso2.carbon.user.core/src/main/java/org/wso2/
>> carbon/user/core/ldap/ReadOnlyLDAPUserStoreManager.java#L1724
>>
>> 2017-08-16 9:56 GMT+02:00 Thomas LEGRAND <[email protected]>:
>>
>>> Hello everybody,
>>>
>>> I am writing a custom user store for the Identity Server and I
>>> successfully retrieved my list of users from my database. But when I try to
>>> display the roles of a user by clicking on the "View Roles" button [1],
>>> only the internal roles are displayed.
>>> I implemented the methods doGetExternalRoleListOfUser(),
>>>  doGetDisplayNamesForInternalRole(), doGetSharedRoleListOfUser() to log
>>> something on the INFO level but nothing happens.
>>>
>>> Can someone tell me which method to implement?
>>>
>>> Regards,
>>>
>>> Thomas
>>>
>>> [1] [image: Images intégrées 1]
>>>
>>
>>
>
> _______________________________________________
> Dev mailing list
> [email protected]
> http://wso2.org/cgi-bin/mailman/listinfo/dev
>
>


-- 

*Isura Dilhara Karunaratne*
Associate Technical Lead | WSO2
Email: [email protected]
Mob : +94 772 254 810
Blog : http://isurad.blogspot.com/
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to