Нужно думать сущностями, логическими блоками.
Пермишены и роли - это у вас разграничение того, чтоб может пользователь делать и куда он может ходить. Это как карточка доступа в офисе, в какие кабинеты она срабатывает и какие шкафчики открывает.
Блокировка
а) если это некая блокировка, которая не дает пользователю никуда ходить кроме столовой и коридоров - то это Роли и Пермишены. При том можно сделать проверку при получении ролей. Если блокирован - пермишены не грузим из БД, чтоб никуда не было доступа. А если допустим супер админ - даем все пермишены.
Но это говнокод.
Грамотно - если у вас стоит задача сделать блокировку, то сделать у ролей/пермишенов флаг activ(1/0). И если блокируется доступ управлять флагами. Вот и логично все. Можно закрывать доступ временно и частично к разделам.
б) Если блокировка это фейс контроль на входе, блокировка не доступа а именно самого юзера как сущности, это флаг а таблице который отрубает вобще возможность залогиниться.