Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [inne] Jak rozwiązać system uprawnień dla różnych użytkowników?
Micchaleq
post
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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
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...
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 8.10.2025 - 23:44