Size: a a a

2020 May 12

🎃

🎃 Даниил ◠‿◠✿... in Laravel Pro
в корне лежит
источник

🎃

🎃 Даниил ◠‿◠✿... in Laravel Pro
routes/web
источник

ПЧ

Приятный Человек... in Laravel Pro
нашел, спасибо
источник

vv

vvv vvv in Laravel Pro
RouteServiceProvider тут можно поменять ну куда угодно
источник

RK

Roman Kapralov in Laravel Pro
Всем привет.
Парни подскажите плиз, есть ли под такое, что описано ниже, какое то готовое RBAC решение (с минимальными доделками), или лучше писать кастом?

1. У нас есть сущность пользователь и сущность аккаунт. В одном аккаунте может быть несколько пользователей.
2. Пользователь может принадлежать к нескольким аккаунтам.
3. Для каждого аккаунта и пользователя одинаковые наборы прав и ролей.
4. Права и роли привязываются к пользователю
5. у одного пользователя может быть несколько наборов прав и ролей в рамках разных аккаунтов, то есть например пользователь 1 состоит в аккаунте 1 и аккаунте 2, и в обоих роль у него Сотрудник. Но в аккаунте 1 у него доступен 1 набор прав, в аккаунте 2 у него другой набор прав в рамках одной и той же роли. Кроме того в рамках разных аккаунтов пользователь может иметь разный набор ролей.
6. в рамках разных аккаунтов стандартные наборы прав для одних и тех же ролей могут различаться, по аналогии с п5
7. в рамках аккаунта, юзеру можно назначить кастомный набор прав в рамках одной и той же роли. То есть например роль Сотрудник в разных аккаунтах имеет разные дефолтные наборы прав, но мы можем для конкретного юзера этот набор прав расширить или сузить, то есть кастомизировать.
8. В рамках одного аккаунта, пользователь не может просматривать и изменять пользователей, которые выше него ролью. То есть у ролей должна быть иерархия
источник

vv

vvv vvv in Laravel Pro
Roman Kapralov
Всем привет.
Парни подскажите плиз, есть ли под такое, что описано ниже, какое то готовое RBAC решение (с минимальными доделками), или лучше писать кастом?

1. У нас есть сущность пользователь и сущность аккаунт. В одном аккаунте может быть несколько пользователей.
2. Пользователь может принадлежать к нескольким аккаунтам.
3. Для каждого аккаунта и пользователя одинаковые наборы прав и ролей.
4. Права и роли привязываются к пользователю
5. у одного пользователя может быть несколько наборов прав и ролей в рамках разных аккаунтов, то есть например пользователь 1 состоит в аккаунте 1 и аккаунте 2, и в обоих роль у него Сотрудник. Но в аккаунте 1 у него доступен 1 набор прав, в аккаунте 2 у него другой набор прав в рамках одной и той же роли. Кроме того в рамках разных аккаунтов пользователь может иметь разный набор ролей.
6. в рамках разных аккаунтов стандартные наборы прав для одних и тех же ролей могут различаться, по аналогии с п5
7. в рамках аккаунта, юзеру можно назначить кастомный набор прав в рамках одной и той же роли. То есть например роль Сотрудник в разных аккаунтах имеет разные дефолтные наборы прав, но мы можем для конкретного юзера этот набор прав расширить или сузить, то есть кастомизировать.
8. В рамках одного аккаунта, пользователь не может просматривать и изменять пользователей, которые выше него ролью. То есть у ролей должна быть иерархия
для лары всего 3-5ть rbac готовых, посмотри насколько они отражают твое ТЗ. Мне spatie permission - зашел.
источник

RK

Roman Kapralov in Laravel Pro
которые пересмотрел, не подходят, то есть как варик делать форк и допиливать. ВОт и спросил, может не знаком с какими то пакетами
источник

RK

Roman Kapralov in Laravel Pro
вообще тут вопрос именно в целесообразности использования готового решения допиленного, или кастомной разработки, под крупный saas проект
источник

YV

Yushkevich Vitaly in Laravel Pro
у тебя пользователь может быть одновременно в разных аккаунтах находиться / смотреть сквозные данные?
источник

RK

Roman Kapralov in Laravel Pro
нет
источник

YV

Yushkevich Vitaly in Laravel Pro
Если нет, то сложностей вообще нет. Считй, что у тебя все сводится к простой задаче "есть пользователь, привязанный к аккаунту и у него есть набор пермитов". А дальше просто расстановка нужных гейтов на доступ
источник

YV

Yushkevich Vitaly in Laravel Pro
Мы как-то делали подобную штуку. Там единственное не было требования из последнего пункта, но это не выглядит сложным
источник

RK

Roman Kapralov in Laravel Pro
всмысле нет именно одновременно. Но при авторизации юзер может выбрать в какой аккаунт он авторизуется из тех куда у него есть доступ
источник

YV

Yushkevich Vitaly in Laravel Pro
Roman Kapralov
всмысле нет именно одновременно. Но при авторизации юзер может выбрать в какой аккаунт он авторизуется из тех куда у него есть доступ
да, это понятно.
источник

RK

Roman Kapralov in Laravel Pro
Yushkevich Vitaly
Если нет, то сложностей вообще нет. Считй, что у тебя все сводится к простой задаче "есть пользователь, привязанный к аккаунту и у него есть набор пермитов". А дальше просто расстановка нужных гейтов на доступ
при кастомной разработке да, согласен. Но часть команды считает что логичнее использовать готовое решение, например laratrust. Но я очень сильно сомневаюсь, что переработка универсального пакета, выйдет эффективнее чем разработка с нуля
источник

vv

vvv vvv in Laravel Pro
у известного пакета будет дока + гитхаб с ответами
источник

vv

vvv vvv in Laravel Pro
а у вас главный архитектор ушел и привет, use the source luke
источник

YV

Yushkevich Vitaly in Laravel Pro
мы по моему spatie там тоже использовали. А может и ничего. Но задача кажется большой. Она у нас в пределах 30-40 часов закрылась с фронтендом
источник

YV

Yushkevich Vitaly in Laravel Pro
в целом спативский пакет - просто обертка над стандартными гейтами + миграции и трейты
источник

YV

Yushkevich Vitaly in Laravel Pro
чем весьма удобен с одной стороны
источник