Зачем список разрешений/permissions в БД?

Смотрел кучу админок, статей и роликов, везде создается таблица с разрешениями, но эти разрешения пустые записи без реализации в коде, большой шанс опечаток или хранить устаревшие данные, опять же как-то надо поддерживать актуальность на боевом сервере, тестовом и машинах разработчиков.

Сейчас поднимаю новую админку и решил почему бы разрешения не хранить простым массивом? Либо константами какого класса разрешения, в админке уже показывать эти данные для назначений ролей, так точно будет сначала реализация, актуальность кода и только потом записи в БД.

В чем может быть подвох? Зачем все таки разрешения в БД? Был ли у вас опыт с этим? Миграциями держать актуальность таблицы с разрешениями?
  • Вопрос задан
  • 234 просмотра
Пригласить эксперта
Ответы на вопрос 2
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Вообще классическое решение из времен когда память была дорогая - хранить права как бинарную маску вида 0101011101 - в которой определяемая роль зависела тупо от номера бита.
Проблемы которые при таком подходе возникают - достаточно очевидны.

Что именно Вы подразумеваете под "почему бы разрешения не хранить простым массивом" и "Зачем все таки разрешения в БД?" - из Вашего вопроса не очень понятно.
Ответ написан
@assets
Back-end developer
Создание ролей нужно для того чтобы создать новый роль и доступом по разделу. Хранит в массив можно когда роли по умолчанию.

Например
User
Admin
SuperAdmin

У вас 3 роли, смысл хранение их в базе нету, если данные не меняться.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Искра Екатеринбург
от 80 000 до 100 000 ₽
Art gorka Санкт-Петербург
от 60 000 ₽
25 апр. 2024, в 11:02
5000 руб./за проект
25 апр. 2024, в 10:42
150000 руб./за проект
25 апр. 2024, в 10:41
2000 руб./за проект