Skip to content
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

backport: Search correctly entities with user role (#766) #768

Commits on Dec 5, 2022

  1. Search correctly entities with user role (oVirt#766)

    When a user is asking for data via the API with some filter (name of the
    required entity for example), we should call implicitly the search
    engine from one hand to implement the filter and from the other hand we
    are getting all the entities that the user can access according to the
    permissions via a pre-defined query.
    Given the search and the query results, both are intersected to given a
    result that matches the given filter with the user authorization.
    
    In AbstractBackendCollectionResource we have two signatures for getBackendCollection method:
    
    protected List<Q> getBackendCollection(QueryType query, QueryParametersBase queryParams)
    protected List<Q> getBackendCollection(QueryType query, QueryParametersBase queryParams, SearchType searchType)
    
    The 1st just brings the query results, teh 2nd brings query and search
    results and intersect them.
    
    When a user tries to search for a specific entity and the 1st signature
    is used instead of the 2nd, the result is that the first item is picked
    from the resulted collection and mismatch the requested entity, this may
    cause an error where an operation is attempted to be excuted with the
    wrong information (for example, creating a template and giving the wrong
    template cluster)
    
    This patch fixes a wrong call to the 1st signature when the 2nd
    signature should be used in the following entities:
    
    Data Centers
    Clusters
    VNIC Profiles
    
    Signed-Off-By: Eli Mesika <emesika@redhat.com>
    Bug-Url: https://bugzilla.redhat.com/2144346
    
    Signed-off-by: Eli Mesika <emesika@redhat.com>
    emesika authored and mwperina committed Dec 5, 2022
    Configuration menu
    Copy the full SHA
    11d518d View commit details
    Browse the repository at this point in the history