«phpClub» — архив тем ("тредов"), посвящённых изучению PHP и веб-технологий.
Аноним 2019/02/28 20:23:18  №1356973 1
Котаны, совета прошу. Я нуб, пхп осваиваю понемногу. В общем сейчас свое приложение делаю, MVС, на классах, содрал структуру с сети, запросы в базу писать уже научился( с помощью PDO), sql знаю. Суть туда/сюда понимаю. Короче зайчатки разума есть.
На работе появилась задача, которую мне нужно по итогу реализовать, сроки совсем не сжатые, но работу веду по факту ежедневно. Думаю что мой MVC шаблон и станет основой будещего приложения.
Суть приложения проста - сотрудники заходят на сервер и получают перечень доступных им запросов в базу, которые могут использовать.
Какие проблемы для себя я вижу:
1. Как сделать авторизацию в MVC?
2. Как делать права доступа? Т.е. сотруднику №1 доступны все отчеты, а сотруднику №2 только один.
sql-отчетов гипотетически будет много разных.
Делаю это для удобства всех вообще, потому как на данный момент отчеты я ручками пилю при необходимости.
Такой вот учебно-практичный проект возникает.
Где почитать годноты, котаны?



Ответы: >>1357016 >>1359952
Аноним 2019/03/06 02:35:32  №1359952 2
>>1356973

В твоем случае проще всего сделать либо связь многие-ко-многим между запросами и пользователями, либо сделать роли (бухгалтер, продажник, админ), для запроса указать требуемую роль, и каждому пользователю присвоить одну или несколько ролей. Последнее называется RBAC, почитай, прежде чем изобретать велосипед.

Советую реализовать RBAC, в общем.

Статья в википедии про RBAC трудночитаема.

> 1. Как сделать авторизацию в MVC?

В твоем случае:

if (!$this->hasRole(Roles::ROLE_BUH)) {
редиректим на форму логина, либо показываем ошибку нехватки прав;
}