@ettychel

Реализация групп, ролей и прав пользователей в laravel, есть ли такое решение?

Добрый день!
Подскажите пожалуйста, гуглил, не нашел ничего подобного готового.
Необходимо чтобы у пользователя была группа, тогда он может перейти по определенному роуту.
(Роут пропускает только 1 группу, в свою очередь пользователь может иметь членство в нескольких группах)
Далее необходимо чтобы у пользователя была роль по которой будет определено, что будет отображено на странице. Даже этого уже будет достаточно.
Примерная схема
User - id, name, password
1, Petya, qwe
2, Vasya, ewq
3, Kolya, qaz

Group - user_id, group_id, group_name(для наглядности)
1, 1, Worker
1, 2, Warmir
2, 3, Security
3, 1, Worker

Roles - user_id, role_id, group_id, role_name (для наглядности)
1, 1, 1, Admin
2, 2, 1, Moder
3, 3, 2, User
2, 1, 3, Admin

И получается, что пользователь Petya может перейти на Worker и на Warmir, на Worker он будет Admin, а на Warmir он не имеет роли

Дополню:
Привязка прав к роли не нужна:
User -> hasToMany(Role)
Role -> hasToMany(permission)
Или
User -> hasToMany(Group)
Group -> hasToMany(Role)
НЕОБХОДИМО ВОТ ТАК:
User -> hasToMany(Group)
User ->hasToMany(Role)
Group -> hasToMany(Role)
  • Вопрос задан
  • 3488 просмотров
Решения вопроса 1
mzcoding
@mzcoding
Web-Разработка
Так этож вам надо обычную ACL с ролями, правами и прочими вещами. Я обычно юзаю этот пакет https://github.com/spatie/laravel-permission
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
@vism
Луйший bouncer - вроде так.
Почему лучший не вспомню, по я для себя определился с год назад.
Ответ написан
Комментировать
@vladislavs
Вот хорошее и простое решения ролей и прав! Мне помогло
https://laravel.demiart.ru/guide-to-roles-and-perm...
Ответ написан
Комментировать
dlnsk
@dlnsk
ПК Партнер 01.01 -> ПК Поиск -> IBM PC
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы