Implementacja ACL dla mojej aplikacji PHP

Moja aplikacja Realestate PHP posiada następujące grupy użytkowników,

Admins, Moderatorzy Agenci

Chcę określić następujące uprawnienia dla następujących użytkowników.

Admins - >

  • Może Tworzyć Moderatorów,
  • Może Tworzyć Agentów,
  • Można Wstawić Właściwości,
  • Może Aktualizować Właściwości,
  • Można Usunąć Właściwości

Stąd Admin będzie miał wszystkie uprawnienia w skrócie Admin tutaj będzie superAdmin

Chcę przypisać ograniczone uprawnienia moderatorowi, a co za tym idzie agentom.

Jestem zdezorientowany, jak stworzyć bazę danych do tego, a także jak zaimplementować ją w mojej aplikacji PHP.

Thank you

Author: Ibrahim Azhar Armar, 2010-12-11

2 answers

Wygląda na to, że będziesz potrzebował systemu kontroli dostępu opartego na rolach. Rozwijanie jednego nie jest naprawdę trywialne zadanie, tak jak już sugerowano, znalezienie frameworka lub gotowej klasy, która robi praca byłaby warta zachodu.

Dostęp Oparty Na Rolach Control

Http://www.tonymarston.net/php-mysql/role-based-access-control.html

Http://www.sqlrecipes.com/database_design/fine_grained_role_based_access_control_rbac_system-3/

Http://www.sitepoint.com/forums/showthread.php?threadid=162027

Należy utworzyć tabelę, w której należy zdefiniować wszystkie typy roli.

I jedna tabela dla użytkowników

Przypisuj różne role różnym użytkownikom poprzez łączenie dwóch tabel. oraz coś takiego ......

 13
Author: Community,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:29:40

Sposób, w jaki robiłem to w przeszłości, polegał na utworzeniu tabeli użytkowników w bazie danych, która miała poziom dostępu (Administrator, Moderator i agenci).

Następnie, jeśli masz system menu, zaimplementuj sprawdzenie, jakie uprawnienia są potrzebne do jakich linków... Admini zobaczą wszystkie linki, Moderator zobaczy tylko linki, które powinien zobaczyć, a agenci zobaczą tylko to, co powinni zobaczyć.

Również na stronach, które możesz chcieć ograniczyć użytkowników, będziesz chciał sprawdzić, czy poziom dostępu użytkowników. Jeśli przejdą, zobaczą stronę, jeśli nie, zostaną przekierowani lub pojawi się błąd javascript.

Coś takiego jak poziom dostępu może Ci pomóc w przechowywaniu go w pliku cookie, ponieważ możesz ograniczyć połączenia do bazy danych.

Mam nadzieję, że to pomoże, Mike

 0
Author: Psycorpse,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-12-11 07:24:27