Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MYSQL]Uprawnienia użytkowników - jaki efektywny sposób by to rozwiązać?
Marr
post
Post #1





Grupa: Zarejestrowani
Postów: 103
Pomógł: 1
Dołączył: 19.08.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Witam.
Zastanawiam się jak najefektywniej rozwiązać sprawę uprawnień użytkowników. Chciałbym gdzieś zdefiniować wszystkie możliwe akcje do przeprowadzenia w "systemie" a później zapisywać je w profilu użytkownika i sprawdzać przed wykonaniem określonej akcji. Jedynym rozwiązaniem, które przychodzi mi teraz do głowy to ustawienie w tabeli kolumn odpowiadających za każde konkretne uprawnienie i wstawianie tam,np. wartości 1 i 0 i w każdym miejscu w serwisie sprawdzanie warunku odwołując się do konkretnej kolumny... tyle że wydaje mi się to strasznie nieefektywne i nieeleganckie i zastanawia mnie jak taką sprawę z reguły się rozwiązuje? Na jakiej zasadzie mam działać? Dzięki za wszelkie odpowiedzi.
Go to the top of the page
+Quote Post
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Z zasady uprawnień nie przypisuje się użytkownikom, tylko rolom.
Tworzysz role, później do nich dodajesz uprawnienia (z zachowaniem zasady minimum), i dodajesz użytkownika do wybranych ról.
Dzięki temu przy zmienie jakiegoś uprawnienia nie musisz go zmieniać u wszystkich użytkowników, tylko w jednej roli.
Poza tym role można łączyć u danego użytkownika i wiele innych.

Jeśli chodzi o tabele:
permissions -> ustawienie zdefiniowanych uprawnień
| id | name | description | action |

role_permission -> połączenie uprawnień w role
| id | name | permission_id |

usr_role -> przypisanie dla użytkownika roli
| usr_id | role_id |

Coś w tym tonie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
--Marr--
post
Post #3





Goście







Kurcze to zburzyło mój światopogląd;] a tak powaznie to dzięki za pomoc, troche mi to zarysowałeś - będę się musiał teraz z tym przegryźć nieco, jeśeli mógłbys mi pokazać na jakimś przykładzie dla 5 latka to byłbym wdzieczny, a jak nie to bede sam kombinowac zeby to zrozumiec do konca.
Go to the top of the page
+Quote Post
vokiel
post
Post #4





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

Ostrzeżenie: (0%)
-----


Tak z grubsza:
(IMG:http://img141.imageshack.us/img141/1209/privilegesqh9.th.jpg)

Potem dla danego użytkownika pobierasz ID ról, do których jest przypisany, i do tych ID ról pobierasz uprawnienia.
Albo w drugą stronę, jakaś akcja wymaga uprawnień, sprawdzasz role dla danego ID urpawnienia, i sprawdzasz czy dany usr należy do danej roli.
Go to the top of the page
+Quote Post

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: 23.08.2025 - 20:12