![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 186 Pomógł: 4 Dołączył: 13.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam serdecznie,
Borykam się z pewnym problemem, chciałbym sobie to jakoś w głowie ułożyć zanim przejdę do pisania kodu. Mam strone zabezpieczoną logowaniem itp. chciałbym sobie na niej stworzyć moduł uprawnień, tak bym głowny administrator mógł nadawać i zmieniać uprawnienia dla danych użytkowników ( grup do których należą ). Otóż mam napisane w jednym pliku np class.user metody : dodawanie, usuwanie, edycja. W czym tkwi największy problem w jaki sposób mogę dynamicznie zmieniać jako administrator te uprawnienia w kodzie wynikowym ( widocznym przez administratora było by to proste, ale nie bardzo wiem jak to zapisać i gdzie umieścić. A jak wyżej wynika nie chce robić tego na sztywno bo można walnąć if( użytnownik nie jest w tej grupie) echo nie masz uprawnien; else : Uprawnienia : - dodawnia grupa 1 - lista rozwijana z widocznością wszystkich grup - usuwanie grupa 1 - edycja grupa 2 PS: podobne uprawnienia są na forach, że jedni użytkownicy widzą dany temat a inni nie. Ten post edytował Micchaleq 9.06.2011, 23:19:40 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Pytanie... Na jakim poziomie rozdrobnienia uprawnień chcesz "utknąć"? Czy wszyscy użytkownicy w danej grupie mają te same uprawnienia, czy przewidujesz sytuację, gdy jakiś użytkownik choć ma to samo co inni, może jeszcze coś innego?
Przypuśćmy masz grupę player ale z jakichś powodów kilku userów ma pośród nich mieć uprawnienie do czegoś, czego inni nie mogą, ale nie jest to na tyle ważne, by nadawać im grupę moda, który ma o wiele większe uprawnienia. Przypuśćmy mają oni mieć dostęp do określonego podforum, normalnie niewidocznego dla innych. Jeśli tak to zastosowałbym ACL zhierarchizowany z dziedziczeniem i kontrolą na poziomie zasobów. Przykładowo dla danego użytkownika o ciut wyższych uprawnieniach utworzyłbym grupę, która dziedziczyła by po użytkowniku wszystkie uprawnienia, ale dodatkowo określałbym (choćby checkboxami) dodatkowe uprawnienia jak choćby do odczytu określonego subforum. Pewnym problemem jest zapis tabeli uprawnień wtedy, by było to w miarę uniwersalne. Musiałbyś bowiem wprowadzić oznaczenia dla określonych modułów lub funkcji i dodatkowo potem ich elementów oraz uprawnień. Bo co Ci z tego, że ktoś ma prawo do odczytu tematów publicznych na forum, skoro może dostać prawo do odczytu JEDNEGO tematu z forum, do którego nie ma nikt dostępu, a tym samym ma mieć możliwośc jego obejrzenia, mimo faktu iż do samego podforum nie ma uprawnień. W efekcie musi się mu wygenerować link do podforum ale wewnątrz jedynie jeden link. Lub też jeden dodatkowy panel na forum gdzie będa wrzucone wszystkie tematy, do których ma dodatkowe uprawnienia. Wszystko zależy od koncepcji więc... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 23:44 |