> On Aug 15, 2015, at 10:15, Michael Krotscheck <krotsch...@gmail.com> wrote:
> 
> 
>> On Fri, Aug 14, 2015 at 2:26 PM Adam Young <ayo...@redhat.com> wrote:
>> On 08/14/2015 12:43 PM, Michael Krotscheck wrote:
>> > 1- Do users want to page through search results?
>> Does not matter:  in Federation, the User list is not available.
> 
> Let's back up here for a sec: A user wants to page a list of data. This is 
> something horizon needs, traditionally relying on keystone, and now keystone 
> has broken backwards compatibility for horizon because of one use case, 
> without taking responsibility for it and providing (with code) a good 
> alternative. Furthermore, you and your team are saying "You should go use a 
> different service that's better at this", which is basically saying "We live 
> in this silo, we don't have to care about other silo's".
> 
> You broke backwards compatibility. It's your responsibility to address it.
> 

Please do not construe a major api change as backwards incompatible. This 
pagination was never supported in v3 properly/at all. 

The v3 api was never claimed to be backwards compatible; this is a major api 
version. I am offering a different API that gets the information you need and 
saying that the request for pagination of every single possible user (the API 
that people use in v2) is not what we want to maintain in v3 because we are 
working to remove the need for the badly implemented (and not frequently used) 
store for user data. 

V2 will not stop it's support (except that it is frozen and will be deprecated 
in the near future). And v2 will pretty much just fail at pagination with ldap, 
but this is a long running behavior. 

> The other argument I'm hearing here is that keystone is responsible for 
> authentication and authorization, but not user management. I actually agree 
> with this, but nobody's started a user management service and/or its 
> delegation plugins, so now we have a rather large hole in horizon's features, 
> late in a release cycle, and nobody has the resources to address it. What do 
> you propose to do about it?
> 

As we move towards tools like FreeIPA Or something similar, we will be 
addressing the gap. 

I also assert horizon should not be managing users in the same way Keystone 
should not be managing users. Horizon should show what users have access to 
openstack (and this *can* be paginated) and allow for searching for a user that 
is visible to keystone but does not have access to openstack so that they can 
be grants access. 

The user management service would be FreeIPA in my previous example (or AD in 
the environments that deploy it, etc). 

So to distill out what we can do (and what is viable without having wilding 
different workflows based upon implementation details) and solve the immediate 
ask for pagination is:

1: you do not get to list every user visible to keystone via v3. This is where 
the problems lie.

2: you can search for users that are visible but do not have an active 
assignment (this may need some work - and is a reasonable ask). 

2a: if the list of users is small the filter/search could return all users

3: you can list users with an active assignment (using the assignment apis) and 
this *can* be paginated (if it does not already support pagination)

4: (future view) leverage an already existing open source solution for user 
management such as FreeIPA and remove/deprecate the sql-based data store that 
is missing basic user management features

Alternative to 4: find stake holders who want to take on the risk and effort of 
maintaining and supporting a full fledged identity provider and implement it in 
the SQL driver. 

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to