Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 350 Pomógł: 31 Dołączył: 23.05.2010 Ostrzeżenie: (0%)
|
Cześć.
Próbuje rozgryźć w jaki sposób działa autoryzacja (logowanie w "FOSUserBundle"). Kontroler SecurityController.php wykorzystuje w tym celu trzy akcje: loginAction, renderLogin, checkAction. Akcja "loginAction" to właściwie przygotowanie to wyświetlenia formularza z użyciem renderLogin - nigdzie tutaj nie ma konkretów; szukam linijek, które przedstawią mi bezpośrednie działanie autoryzacji (tj: walidacja pól formularza, ewentualne zwrócenie błędów walidacji, sam proces logowania (poprawna, błędna autoryzacja). Routing formularza (parametr "action" w formularzu) kieruje na akcje "checkAction" - choć wydaje mi się ona trochę bezużyteczna (?), ponieważ rzucamy od razu wyjątkiem. Mam skonfigurowany security.yml gdzie parametr "form_login" kieruje według ustawień: Kod firewalls: main: pattern: ^/ form_login: provider: fos_userbundle csrf_provider: form.csrf_provider logout: true anonymous: true Jednak niewiele mi mówi samo hasło "provider" - więc tego kroku dalej nie zagłębiałem, więc jestem w kropce. Wydaje mi się, że cały ten moduł/vendor opiera się na eventach - i w przypadku wykrycia danej akcji (rejestracja, logowanie, zapomniałem hasła, itd). Folder EventListener posiada plik AuthenticationListener.php, który posiada akcje authenticate, ale nie mogę nigdzie w kontrolerach/plikach konfiguracynych znaleźć wywołania ani tego eventu. Więc podsumowując: 1) Pliki konfiguracyjne, parametr "provider" - za co dokładnie odpowiada? Parametr, który określa jaka klasa, bundle będzie używana dla danego modułu (?) - w tym przypadku "form_login" ? 2) Najważniejsze: w którym momencie jest wywoływana akcja/funkcja authenticate z EventListenera? |
|
|
|
wujek2009 [SF2][SF]FOSUserBundle - właściwy kod od autoryzacji 14.09.2013, 18:03:56
pedro84 Do poczytania: http://symfony.com/doc/current/book... 16.09.2013, 14:00:30 ![]() ![]() |
|
Aktualny czas: 21.12.2025 - 16:50 |