Здравствуйте.
Есть приложение на CodeIgniter, где регистрируются юзеры.
Есть таблица в бд где данные юзера хранятся.
У каждого юзера есть Role - авторизованный, модератор, администратор, забаненнный, удален.
После авторизации данные юзера переносятся в сессию, где и "живут".
Допустим я как администратор хочу забанить пользователя. Меняю ему Role на "забанен".
Но получается что юзер сможет писать комментраии и вести себя как обычный пользователь, пока его сессия не истечет.
Можно конечно на каждый чих пользователя дергать базу на предмет проверки Role и если Role в сессии не совпадает с Role в базе, прибить сессию. Но тогда теряется весь смысл хранения данных юзера в сессии.
Подскажите пожалуйста, как правельнее реализовать данную штуку?