riddlr
@riddlr

Зачем делают пермишены к ролям?

Нужно разграничивать доступ пользователей в приложении. Сделал роли, guest, admin, user. Соответсвенно, в контроллере перед действием я проверяю роль.

Но все продвинутые системы используют помимо ролей пермишены. Зачем? Два юзера с одной и той же ролью могут иметь разные пермишены? Каково практическое применение, и почему не ограничится одной ролью?
  • Вопрос задан
  • 403 просмотра
Решения вопроса 2
HighQuality
@HighQuality
☁ Ниндзя девелопер
Представим что мы работаем в издательстве. Пишем статьи. Автор принёс статью и редактор начал с ней работать.

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

Разрешение на публикацию статей может получить и другой редактор. Например, временно, когда главред ушел в отпуск.

Так и получается, что все заходят в один кабинет, как редакторы. Но у одних больше возможностей, чем у других.
Ответ написан
Комментировать
riot26
@riot26
<:З )~~
А потом добавился moderator. И что? Переписывать каждый контроллер? А потом оказывается юзер может редактировать только свои посты и только в течении 30мин, премиум юзер — только свои в любое время, а модератор любые посты. Писать кучу лишнего кода в контроллере? Окей, а потом кроме постов добавились фоточки с такими же условиями доступа, дублировать код? Условия доступа поменялись, например, юзеры закрепляются за модераторами, модераторы могут редактировать посты только своих юзеров. Опять бегать по контроллерам искать где что? Проще уж застрелиться чем так жить.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы