В любом нормальном приложении пароли хешируют, если я не ошибаюсь этот захеширован путем bcrypt. Вопрос в том зачем роли выносить в отдельную таблицу. Единственная причина, которую я могу представить это динамическое создание ролей, но и то контролировать acl с таким подходом будет крайне сложно, может быть тут выстрелил в ногу себе разраб. Может пароль не верный, то где надо взять пароль, найти сервис который хеширует bcrypt , захешировать его, записать в дб. Если это другой вид хеша, то смотреть в компоненте сесурити, ну и проверить роли если не помогло.
чувак просто не знает что такое хэширование данных и вероятно пытается зайти вставив хэшированный пароль, а вы тут целый доклад написали ))