![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 144 Pomógł: 0 Dołączył: 10.07.2006 Ostrzeżenie: (0%) ![]() ![]() |
jak rozumiem to idea Zend_Acl opiera się na takich zasadach
1)zdefiniowanie, stworzenie ról - niech będzie to -administrator -zlecacz -kontroler -instalator
2)na podstawie parametru z bazy danych przypisuje się aktualnie zalogowanego użytkownika do jakieś roli 3)zależy jak to ma zdefiniowane kontrolery tak sobie przypisuje uprawnienia, ja mam na zasadzie "obiektów" np uzytkownik, plik, zlecenie itp - do każdej akcji z tych obiektów dana rola ma lub nie ma dostępu - np do edycji swoich danych (z kontrolera użytkownik) ma dostepk każdy, a do dodawanie np tylko admin itp itd, no to sobie trzeba zdefiniować zasoby - tyle ile trzeba dla uzytkowników
4) i potem sprawdza się czy ma sie dostęp
ale jaka z tego jest korzyść skoro mozna sobie XML-a zrobić
i potem za pomocą parsera to sobie sprawdzić? może coś źle mówię, nie wiem, ale wydaje mi się, że taki sposób z XML-em jest szybszy do napisania i wygodniejszy ps - jeśli coś źle napisałem o zasadach tworzenia kontroli dostępu i samej kontroli Zend_Acl to prosze o wyprowadzenie mnie z błędu |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 7 Dołączył: 5.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ja się pozwolę wciąć w wątek z zapytaniem o to jakie tworzycie przywileje.
Przykład: forum - admin może moderować dowolny post, użytkownik jedynie swoje. W zasadzie edycja przez admina i edycja przez użytkownika to ta sama operacja więc wystarczyłoby nadać jeden przywilej (edycji), przy czym zasobami admina byłyby wszystkie posty, zaś użytkownika - jedynie własne. Drugie rozwiązanie to nadanie adminowi uprawnień do edycji a użytkownikowi stworzenie czegoś na kształt przywileju editOwn - edycji tylko własnych postów. Przyznam, że to rozwiązanie do mnie raczej nie przemawia ze względu na dość ścisłe powiązanie ACL z resztą kodu (przy pierwszym rozwiązaniu mamy jedynie funkcjonalność edycji pojedynczego postu, przy drugim musimy obsłużyć dodatkowo edycję postów danego użytkownika). Chętnie jednak poznam wasze opinie. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 3.10.2025 - 08:06 |