Następujący scenariusz:Używaj wbudowanego rbaca lub buduj własne?
Mam aplikację internetową dla wielu najemców w Yii2 ' zaawansowany szablon.
Aplikacja ta posiada trzy portale:
- backend
- Pulpit
- frontend
Każdy portal ma swój własny stół do uwierzytelniania użytkownika.
(-frontend_user,
-dashboard_user,
-backend_user)
Frontend i deski rozdzielczej można dojechać z nazwy najemcy na końcu, np:
Gdy użytkownik próbuje się zalogować do panelu lub nakładka I muszą sprawdzić, czy mają prawo do logowania. to nastąpić poprzez nieprzewidziane tabeli (np .: dashboard_user_tenant)
Teraz chcę zbudować RBAC dla aplikacji Dashboard.
Role nie powinny się jednak zawieszać u użytkownika deski rozdzielczej, ale pod dashboard_user_tenant (tabela kontyngencji), , ponieważ prawa mogą zmieniać się w panelu każdego dzierżawcy.
Yii2 ma własny system rbac, ale jak rozumiem, nie pasuje on do moich potrzeb.
Jakieś szanse na dostosowanie rbac Yii2 lub czy lepiej jest zbudować własne niestandardowe rozwiązanie? Może mój własny komponent?
Mam nadzieję, że opis jest wystarczająco jasne :)
Dzięki za odpowiedź! Myślę, że muszę iść w podobny sposób. Dobrym pomysłem jest nadpisanie funkcji "can'". –
Bez obaw, uważam, że jest to bardzo przydatne, ponieważ pozwala określić, czy użytkownicy mają dostęp do stron przy użyciu dowolnej metody! Jeśli chcesz coś jeszcze, daj mi znać! – Lynch