Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] ACL - jak implementować?
-lkjhg-
post
Post #1





Goście







Jak zaimplementować ACL w swoich projektach?

Np. zend ma coś takiego

  1. $acl = new Zend_Acl();
  2. // Dodajemy rolę - Gość
  3. $acl->addRole(new Zend_Acl_Role("Guest"));
  4. // Dodajemy rolę - Użytkownik - i dziedziczymy z Gościa
  5. $acl->addRole(new Zend_Acl_Role("User"), "Guest");
  6. // Dodajemy rolę - Moderator - i dziedziczymy z Użytkownika
  7. $acl->addRole(new Zend_Acl_Role("Moderator"), "User");
  8. // Dodajemy rolę - Administrator - nie dziedziczymy
  9. $acl->addRole(new Zend_Acl_Role("Administrator"));


To jest dla mnie logiczne, ustawiam to np w index.php Jednak gdzie definiować kontrolę dostępu i gdzie sprawdzać? Mógłby to ktoś tak łopatologiczne wyjaśnić? Oparłem wszytko o MVC... To np. mam sprawdzać czy moderator jest moderatorem w którym momęcie? np w routerze? czy klasa którą wywołałem ma dziedziczyć po tym Zend_Acl?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
-Gość-
post
Post #2





Goście







Aha, czyli wszystkie motody (no prawie) powinny mieć na początku coś takiego:

  1. class Super
  2. {
  3. public function metoda_dodaj()
  4. {
  5. $acl-> isValid('metoda_dodaj')
  6. {
  7. // kod który się wykonuje gdy jest dostęp
  8. return true;
  9. }
  10. }
  11. }


A w którym momencie dodawać te reguły? w konstruktorze klasy?
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: 12.10.2025 - 22:15