Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Zend_Framework] autoryzacja dla wybranych rekordów tabeli
konys
post
Post #1





Grupa: Zarejestrowani
Postów: 100
Pomógł: 7
Dołączył: 5.11.2005

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


Witam

Stawiam pierwsze kroki z zaawansowanymi systemami autoryzacji użytkownika. Natknąłem się na podstawowy problem, którego jakoś nie mogę rozwiązać:

Mam tabelę 'dane':

id
owner_id
jakies_dane

i chcę by użytkownik z grupy 'user' mógł przeprowadzać operacje jedynie na swoich rekordach (wg. owner_id).

Czy da się to zrobić używając Zend_Acl? Jeśli tak, to w jaki sposób (czy dołoby radę skonstruować zasób (Zend_Acl_Resource) reprezentujący wszystkie rekordy wybranego użytkownika)?

Ponieważ mój projekt bazuje na Zend Framework najchętniej wykorzystałbym autoryzację w nim zaimplementowaną, jestem jednak otwarty na inne propozycje.

Ten post edytował konys 21.01.2007, 03:40:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Zyx
post
Post #2





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


Do ACL można wstawić ogólną regułę kontroli autorstwa zasobu. Przykładowo, jeśli stwierdzisz, że użytkownik ma prawa do "akcja_allow_all" (nazwij to sobie, jak chcesz), to może on modyfikować wszystkie rekordy, w przeciwnym razie w PHP sam już odpalasz własny kod, który sprawdza zgodność autora. W ACL'u nie trzeba wszystkiego ładować do tej struktury uprawnień, bo to się mija z celem. W swoim kodzie umieszczam tam jedynie te dane, o których wiem, że na danej stronie się mogą przydać, czyli naraz jest ładowana tylko jedna rola oraz część uprawnień.
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: 29.12.2025 - 00:32