-
Notifications
You must be signed in to change notification settings - Fork 334
WPB-20055 Endpoint for updating user group with SCIM #4829
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
WPB-20055 Endpoint for updating user group with SCIM #4829
Conversation
79f0bf6 to
f089d1d
Compare
bf8958c to
15ff839
Compare
7809e2e to
5179609
Compare
15ff839 to
b241770
Compare
5179609 to
1fd90ff
Compare
479d19e to
a81d162
Compare
0b04971 to
e93e1a8
Compare
1fd90ff to
5d74210
Compare
35ab411 to
74a33ab
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements SCIM support for updating user groups (WPB-20055), enabling group name changes and member list modifications through the SCIM API endpoint.
Key Changes:
- Implements
putGroupin the SCIM Group API to handle group updates via SCIM - Adds new internal Brig endpoints for creating and updating user groups with enhanced error handling
- Refactors existing
CreateGroupFullandGetGroupUnsafeoperations toCreateGroupInternalandGetGroupInternalfor naming consistency
Reviewed Changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
services/spar/src/Spar/Scim/Group.hs |
Implements putGroup method by calling scimUpdateUserGroup |
services/spar/src/Spar/Error.hs |
Updates error mapping for SCIM subsystem errors, refines error messages for invalid members |
services/brig/src/Brig/API/Internal.hs |
Adds updateGroupInternalH handler and renames create/get group handlers for consistency |
libs/wire-subsystems/src/Wire/ScimSubsystem.hs |
Adds ScimUpdateUserGroup operation to subsystem interface |
libs/wire-subsystems/src/Wire/ScimSubsystem/Interpreter.hs |
Implements scimUpdateUserGroupImpl with validation for team membership and SCIM management |
libs/wire-subsystems/src/Wire/UserGroupSubsystem.hs |
Adds internal operations: CreateGroupInternal, GetGroupInternal, ResetUserGroupInternal |
libs/wire-subsystems/src/Wire/UserGroupSubsystem/Interpreter.hs |
Implements access control bypass for internal operations and resetUserGroupInternal |
libs/wire-subsystems/src/Wire/BrigAPIAccess.hs |
Updates API interface with new internal group operations and error handling |
libs/wire-subsystems/src/Wire/BrigAPIAccess/Rpc.hs |
Implements RPC calls for internal group operations with proper error handling |
libs/wire-api/src/Wire/API/Routes/Internal/Brig.hs |
Defines UpdateGroupInternalRequest type and API route for group updates |
libs/wire-subsystems/test/unit/Wire/ScimSubsystem/InterpreterSpec.hs |
Updates mock to align with renamed operations |
integration/test/Test/Spar.hs |
Adds comprehensive integration tests for SCIM group update and validation scenarios |
integration/test/API/Spar.hs |
Adds updateScimUserGroup test helper function |
changelog.d/2-features/update-scim-groups |
Documents the new feature |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Checklist
changelog.d