[CVE-2026-16105] Missing per-role authorization on RoleContainerResou…#51084
[CVE-2026-16105] Missing per-role authorization on RoleContainerResou…#51084martin-kanis wants to merge 1 commit into
Conversation
…rce composite endpoints Closes keycloak#51002 Signed-off-by: Martin Kanis <mkanis@ibm.com>
There was a problem hiding this comment.
Pull request overview
Adds per-role authorization to name-based composite role endpoints, addressing CVE-2026-16105.
Changes:
- Requires manage permission on the target role when adding or deleting composites.
- Adds integration tests confirming unauthorized operations return forbidden without modifying composites.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
services/src/main/java/org/keycloak/services/resources/admin/RoleContainerResource.java |
Enforces target-role manage authorization. |
tests/base/src/test/java/org/keycloak/tests/admin/authz/rbac/InternalClientManagementTest.java |
Covers unauthorized composite additions and removals. |
|
Hi @martin-kanis! The fix looks good overall, I just noticed something that might be worth handling now or at least as a follow up. The same container-only auth pattern also exists on the GET side. The name-based read endpoints in Their ID-based equivalents in |
|
Thanks for the PR. Before we proceed, I want to share some analysis of what this change actually does under both RBAC and FGAP evaluation, because I think we need to align on whether this addresses a real security boundary. No
|
|
@vramik do you think this should have not been assigned a CVE? |
…rce composite endpoints
Closes #51002