Jestem częścią zespołu tworzącego aplikację webową wykorzystującą PHP i MySQL. Aplikacja będzie miała wielu użytkowników z różnymi rolami. Aplikacja będzie również używana w sposób rozproszony geograficznie. W związku z tym musimy stworzyć system kontroli dostępu, który działa na następujących dwóch poziomach:PHP Access Control System
- uprawnień użytkownika sterujące do konkretnych stron php tj udostępnia lub blokuje dostęp do określonych stron (lub elementów interfejsu użytkownika) na podstawie roli użytkownika. Na przykład: użytkownik może mieć dostęp do strony "Uczniowie", ale nie do strony "Nauczyciele".
- Steruje uprawnieniami użytkowników dla określonych rekordów bazy danych, tzn. Modyfikuje zapytania do bazy danych, tak aby były wyświetlane tylko określone rekordy. Na przykład dla użytkownika na poziomie miasta powinny być wyświetlane tylko te rekordy, które odnoszą się do konkretnego miasta użytkownika, podczas gdy dla użytkownika na poziomie krajowym powinny być wyświetlane rekordy dla WSZYSTKICH MIAST w danym kraju.
Potrzebuję pomocy w zaprojektowaniu systemu, który poradzi sobie z obydwoma rodzajami kontroli dostępu. Punkt nr. 1 wydaje się dość prosty. Jednak zupełnie nie rozumiem, jak zrobić punkt numer 2 bez zakodowania informacji w zapytaniach SQL.
Każda pomoc zostanie doceniona.
góry dzięki
Vinayak
Witam, znam jego starą odpowiedź, ale potrzebuję tylko wyjaśnienia na [diagramie klasy UML] (http://en.wikipedia.org/wiki/Class_diagram), co oznaczają różne typy strzał ?, (pełny, przerywany i szarzejący) – Triztian
@Triztian - Stałe ze strzałkami to wywołania metod, przerywane pionowe linie przedstawiają linie życia, a kreskowane poziome linie często oznaczają powrót –