-
Notifications
You must be signed in to change notification settings - Fork 187
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
graph: Add support for filtering users by groupMembership #5487
Comments
@kulmann @janackermann do we really need this on the We already have: |
@rhafer It's still needed, because |
After reading a bit more through the odata specs and MS Graph docs. I think the filter is somewhat more complex than initially thought. As
to filter by group name it would be:
My intention is to get the filter by id working first. And see from there. |
By ID is totally fine, Web does not need more (for now at least) 🙂 |
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the only supported filter is a single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the only supported filter is a single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the only supported filter is a single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the following filters are supported: A single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` A logical AND filteri on the `id` property of the `memberOf` relation of users. `$filter=memberOf/any(m:m/id eq 262982c1-2362-4afa-bfdf-8cbfef64a06e) and memberOf/any(m:m/id eq 6040aa17-9c64-4fef-9bd0-77234d71bad0)` This will cause at least two queries on the identity backend. The `and` operation is performed locally. Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the following filters are supported: A single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` A logical AND filteri on the `id` property of the `memberOf` relation of users. `$filter=memberOf/any(m:m/id eq 262982c1-2362-4afa-bfdf-8cbfef64a06e) and memberOf/any(m:m/id eq 6040aa17-9c64-4fef-9bd0-77234d71bad0)` This will cause at least two queries on the identity backend. The `and` operation is performed locally. Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the following filters are supported: A single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` A logical AND filteri on the `id` property of the `memberOf` relation of users. `$filter=memberOf/any(m:m/id eq 262982c1-2362-4afa-bfdf-8cbfef64a06e) and memberOf/any(m:m/id eq 6040aa17-9c64-4fef-9bd0-77234d71bad0)` This will cause at least two queries on the identity backend. The `and` operation is performed locally. Closes: owncloud#5487
This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the following filters are supported: A single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` A logical AND filteri on the `id` property of the `memberOf` relation of users. `$filter=memberOf/any(m:m/id eq 262982c1-2362-4afa-bfdf-8cbfef64a06e) and memberOf/any(m:m/id eq 6040aa17-9c64-4fef-9bd0-77234d71bad0)` This will cause at least two queries on the identity backend. The `and` operation is performed locally. Closes: #5487
Author: Ralf Haferkamp <[email protected]> Date: Tue Feb 14 10:32:32 2023 +0100 graph: Initial support for $filter in /users (#5533) This adds some initial support for using $filter (as defined in the odata spec) on the /users endpoint. Currently the following filters are supported: A single filter on `id` property of the `memberOf` relation of users. To list all users that are members of a specific group: ``` curl 'https://localhost:9200/graph/v1.0/users?$filter=memberOf/any(m:m/id eq '262982c1-2362-4afa-bfdf-8cbfef64a06e') ``` A logical AND filteri on the `id` property of the `memberOf` relation of users. `$filter=memberOf/any(m:m/id eq 262982c1-2362-4afa-bfdf-8cbfef64a06e) and memberOf/any(m:m/id eq 6040aa17-9c64-4fef-9bd0-77234d71bad0)` This will cause at least two queries on the identity backend. The `and` operation is performed locally. Closes: #5487
Allow to query all users belonging to a specific group. By using filters on the /users API
/users?$filter=memberOf eq ''
First thing to clarify: Is this really needed? It's already possible to list all group members using
/groups/<group-id>/members/
Maybe that is good enough.
The text was updated successfully, but these errors were encountered: