Контроль доступа
Здравствуйте, пользователи LS.
Просмотрев список доступных модулей, не обраужил модуля, который позволял бы поздавать группы юзеров. Например, обычные пользователи, которые не могли бы создавать топики, более привелегированные юзеры, модераторы. Если ли возможность реализовать подобное на LS?
Просмотрев список доступных модулей, не обраужил модуля, который позволял бы поздавать группы юзеров. Например, обычные пользователи, которые не могли бы создавать топики, более привелегированные юзеры, модераторы. Если ли возможность реализовать подобное на LS?
20 комментариев
Зачатки подобного на LS есть, что принципе упрощает разработку.Подобное делал(делил пользователей на группы).
Могу даже я взяться, но через недельку… сейчас завален заказами.
В общем не найдёшь кто сделает. спишемся…
Просто я сам, практически не зная движка, пытаюсь тут дописать функционал. Столкнулся с той проблемой, чтоб простые юзеры не смогли писать топики, а только те, которым это разрешено. Если в шаблоне запретил вывод кнопки «написать» для обычного юзера, то всё равно остаётся такая возможность, если перейти по нужному урл.
А если попробовать узнать? Я ведь даже написал, с чего начать:
Все строки закомментированы достаточно подробно. Вот, например, последняя строка: если чуть-чуть подумать, то можно догадаться, что если поставить там true, то регаться смогут только те, у кого приглашения есть. А у кого нет — те остаются только читателями. Этого достаточно?
По хорошему, ACL должен быть не просто модулем дополнительным, а частью ядра. Хотя можно и модулем сделать, но тогда нужно будет в каждом Action вызывать и разбираться кому-чего можно, а кому нет.
А по поводу ACL — уже поднималась тема относительно «ролей». В идеале должна быть возможность создавать «роли» со своим набором прав. Тогда, в зависимости от присвоенных «ролей» юзер и будет обладать соответствующими правами. Сейчас в ЛС этого механизма нет.
Я понимаю, что данное решение нельзя назвать профессиональным, поэтому и интересуюсь, как нормально решить проблему с разделением прав юзеров. Ведь, возможно, в дальнейшем, понадобится добавить ещё пару групп.
Там есть функция
В этой функции и заложена логика предоставления прав пользователям.
По-хорошему, вся проверка должна проводиться тут.
Конечно же, в последствии они появятся и изменения должны касаться только класса ACL (в котором и разбирается вся логика).
Другое дело, если ты пишешь модуль, который будет автоматически ставиться, то лучше обойтись без правки «чужих» файлов. И эти методы надо выносить.
Вывод в шаблоне кнопки «написать» так же перестал выводиться, но по урл добавления топика функционал остался доступен.
В этом случае получим не просто редирект, и не ошибку 404 (и то, и другое может вызвать недоумение юзера), а сообщение об ошибке с внятным объяснением причин