Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> ACL - własny, nie zendowski
cojack
post
Post #1





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


Witam,
Potrzebuje do swojego cms'a napisać własny ACL i teraz się bije z myślami jak to zrobić, nie podoba mi się w zendowskim acl serializacja danych, nigdy jej nie używałem i używać nie będę (chyba że będę jakoś zmuszony w co wątpię) ale nie teraz o tym mowa.

Więc wymyśliłem sobie że będę jechał na bitach, np:
  1. $a = 2;
  2. $b = 4;
  3. $c = 8;
  4. $d = $a + $b;
  5. if ( $d & $c )
  6. echo 'Go go go masterczułki';
  7. else
  8. echo 'No nie 4hp';


I teraz czy robić to na grupy + osobno dla usera, czy tylko na grupy? Wiadomo tylko na grupy prościej, a na jedno i drugie, większe możliwości.

Macie jakieś inne pomysły?

Ten post edytował cojack 9.09.2009, 08:41:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Znowu przytoczę swój przykład (IMG:style_emoticons/default/smile.gif) Mam zasoby tworzone na zasadzie ścieżek czyli np.:
user/edit
user/delete
Dodatkowo zasoby mają "przestrzenie nazw" czyli po prostu typy. Powyższe mają typ "action", ale mogą być również inne typy np. "form_field". Sprawdzenie dostępu odbywa się na zasadzie wywołania rekurencyjnego "od tyłu" aż do momentu znalezienia definicji dostępu do zasobu czyli pytając o dostęp do:
moj/super/mega/zasob
sprawdzane są po kolei:
moj/super/mega/zasob
moj/super/mega
moj/super
moj
Dzięki temu mogę jedną definicją odebrać uprawnienia do całego kontrolera. Jeżeli mi się zamarzy to mogę potem nadać dostęp do danej akcji w kontrolerze. Jak na razie rozwiązanie sprawdza się nieźle (IMG:style_emoticons/default/smile.gif)
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: 5.10.2025 - 23:06