diff --git a/src/controllers/user-controller.ts b/src/controllers/user-controller.ts index a31b0a8..d65a21c 100644 --- a/src/controllers/user-controller.ts +++ b/src/controllers/user-controller.ts @@ -370,7 +370,16 @@ export class UserController extends Controller { if (!resultAddRole) { throw new Error("Failed. Cannot set user's role."); } else { - if (Array.isArray(currentRole)) await removeUserRoles(userId, currentRole); + if (Array.isArray(currentRole)) + await removeUserRoles( + userId, + currentRole.filter( + (a) => + !["uma_authorization", "offline_access", "default-roles"].some((b) => + a.name.includes(b), + ), + ), + ); } userRole = role.name;