[keycloak-dev] federation iteration 2

Bill Burke bburke at redhat.com
Mon Jul 28 07:24:10 EDT 2014


Can't drop pagination indefinitely.  Background sync will need it.  But 
for now, all of your suggestions are great.

On 7/28/2014 4:39 AM, Stian Thorgersen wrote:
> Here's a thought, what about dropping pagination and instead returning a maximum number of users.
>
> If an admin is looking for a specific user the admin is not going to want to page through 10K users. So we could return say 50 users, with a message saying "your search returned to many results, please refine your search". Then we can improve the search feature to give better control on finding a specific user. This could include:
>
> * Separate fields for first, last, username and email
> * Registration date
> * Other fields once we add customized profiles (for example DOB)
> * By social username
> * By role
>
> That should make much it easier to aggregate the results from the internal db and federated stores.
>
> ----- Original Message -----
>> From: "Bill Burke" <bburke at redhat.com>
>> To: keycloak-dev at lists.jboss.org
>> Sent: Saturday, 26 July, 2014 2:20:03 AM
>> Subject: [keycloak-dev] federation iteration 2
>>
>> * UserProvider interface stayed the same
>> * Didn't add a UserFederation interface like I said I was going to,
>> didn't have to.
>> * UserFederationProvider interface no longer extends UserProvider and is
>> smaller
>> * UserFederationProvider no longer supports pagination
>> * UserFederationProvider no longer supports getUsers().  This is a very
>> dangerous method for large databases since we can't reliable support
>> pagination.
>>
>> How does pagination work now?
>>
>> * getUsers() only queries local storage
>> * search() methods will call searchByAttributes() on every provider.
>> Then paginate based on local storage.  This may result in long query
>> times (and database inserts) depending how many people of the same name
>> there are.  In a database of 1 million, not sure what the distribution
>> will be.  For example, the most popular US name is "Smith" there are 2.8
>> million which is less than 1% of the USA.
>>
>> But, I'm not sure what to do.  Admins *MUST* be able to search based on
>> names.  What would reduce the search would be to require both first and
>> last name.
>>
>> --
>> Bill Burke
>> JBoss, a division of Red Hat
>> http://bill.burkecentral.com
>> _______________________________________________
>> keycloak-dev mailing list
>> keycloak-dev at lists.jboss.org
>> https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>
>

-- 
Bill Burke
JBoss, a division of Red Hat
http://bill.burkecentral.com


More information about the keycloak-dev mailing list