Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF2][SF]FOSUserBundle - właściwy kod od autoryzacji
wujek2009
post
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?

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
pedro84
post
Post #2





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

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


Do poczytania: http://symfony.com/doc/current/book/security.html. Tam naprawdę wszystko jest piękne opisane, w jaki sposób działa komponent Security. FOSUserBundle jest tylko interfejsem zarządzania użytkownikami (rejestracja, etc), za wszystko inne odpowiada ww. komponent.

Na to też warto rzucić okiem: http://symfony.com/doc/current/components/...y/firewall.html.


--------------------
Google knows the answer...
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 Aktualny czas: 22.08.2025 - 09:32