Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]zarządzanie ACL
-afjl-
post 18.02.2013, 11:27:24
Post #1





Goście







Posiadam prostą klasę ACL, uruchamiam ją w kontrolerze, w nim też sprawdzam dostępność zasobu na podstawie ustalonych w niech reguł itd.

Jednak jak zarządzać regułami np. gdybym chciał edytować je z poziomu jakiegoś panelu? reguły mam zapisywać dla każdego kontrolera w pliku/bazie? Czy jest na to jakiś wzorzec bądź coś co konkretnie określa takie działanie?

Zakładając że z poziomu panelu admina, chciałbym zmienić dostęp moderatorowi co jakiejś sekcji, to przecież nie będę edytował pliku kontrolera...
Go to the top of the page
+Quote Post
Sephirus
post 18.02.2013, 11:33:26
Post #2





Grupa: Zarejestrowani
Postów: 1 527
Pomógł: 438
Dołączył: 28.06.2011
Skąd: Warszawa

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


Jeśli to ma być w formie takiego CMS bądź podobnej i masz do tego panel to najlepiej umieść reguły w bazie danych. Zrób odpowiednią tabelkę na przykład:

id | rola | zasób

I potem przy każdym requeście ładuj ją i ustawiaj w ACL odpowiedni reguły wg tego co w bazie. Nie powinno być z tym problemu.

W samym panelu możesz wówczas posługując się Reflection oraz listowaniem kontrolerów w katalogu zrobić fajny interfejsik do edycji i dodawania dostępów danym zasobom (o ile dobrze zrozumiałem w Twoim kontekście to dane akcje kontrolerów) wybranym rolom.

EDIT: oczywiście tą tabelkę a raczej jej rekordy cache'owałbym gdzieś (może to być jakiś plik w formie tabeli PHP itp.) aby niepotrzebnie nie odpytywać o to zawsze bazy.

Ten post edytował Sephirus 18.02.2013, 11:34:39


--------------------
If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;)
Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.07.2025 - 15:44