я пытаюсь построить приложение, в котором будут некоторыми группыCodeigniter Пусть Контроллеры пользователей доступа на основе ролей/Разрешения
Суперадминистратора, Модераторы, Арендаторы, пользователи
Для этого Super Admin будет иметь доступ ко всем страницам/представлениям и контроллерам. Но остальные группы будут иметь доступ к страницам/представлениям на основе ролей/разрешений
Я, однако, сделал основное меню, заполненное на основе групп пользователей, но проблема в том, что я столкнулся с этим.
Если пользователь входит в систему и имеет прямой доступ к странице со ссылкой, страница открывается, поскольку на контроллере нет ограничений.
Его часы, и я ударяю головой, чтобы выяснить, как ограничить не аутентичного пользователя открытием закрытой страницы/Просмотр.
Я вижу два пути,
- рестрикции кладем на каждый контроллер, поставив галочку, если пользователю разрешено просматривать этот контроллер. Но это будет утомительной работой, и я не уверен, правильно ли это.
- Поместите основную проверку в
MY_Controller
, которая запускается каждый раз при доступе к контроллеру. Это выглядит многообещающим, но я не уверен, как это сделать.
Если у кого-нибудь есть идея или прошла одна и та же проблема, пожалуйста, помогите мне найти решение.
да, но это только хорошо, если у вас есть только две группы. Что делать, если с течением времени может быть создано больше групп и групп, Ограничение их для просмотра некоторых контроллеров? Я реализовал Вариант 1. используя функции 'is_admin()' и 'is_allowed', но я хочу знать, можно ли по умолчанию применять эти функции на всех контроллерах? –