Вы можете создать remote hook для встроенного метода входа.
в user.js
module.exports = User => {
User.afterRemote('login', async (ctx, usr, next) => {
let roleMaps = await User.app.models.RoleMapping.find({ where: { principalId: usr.userId } })
let roleIds = roleMaps.map(roleMap => { return roleMap.roleId })
let roles = await User.app.models.Role.find({ where: { id: { inq: roleIds } } })
usr.roles = roles
next()
})
}
Примечание: Я использую ES6 и частично ES7 (асинхронная/ждать), но вы можете легко переписать его ES5.
Другим вариантом было бы создать отношения между вашими пользователями и ролями, а затем использовать include filter или scopes.
Не забывайте, что вы, вероятно, не хотите настраивать пользователя, а скорее свою собственную модель, расширяющую пользователя. –