Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SF][SF2] Impersonate użytkownika
wiciu010
post
Post #1





Grupa: Zarejestrowani
Postów: 195
Pomógł: 0
Dołączył: 29.04.2007

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


Próbuję zrobić impersonate użytkownika zgodnie z instukcją: http://symfony.com/doc/current/cookbook/se...ating_user.html

Udaje mi się zalogować na dowolnego użytkownika, jednak nie moge wrócić na poprzedniego za pomocą _switch_user=_exit

Mój plik security.yml

Kod
jms_security_extra:
    secure_all_services: false
    expressions: true

security:
    encoders:
        Ex\CallBundle\Entity\User:
            algorithm: sha512
            iterations: 5000
            encode_as_base64: false

    role_hierarchy:
        ROLE_ADMIN:       [ROLE_USER, ROLE_ALLOWED_TO_SWITCH]

    providers:
        main:
            entity: { class: Ex\CallBundle\Entity\User, property: username }

    firewalls:
        main:
            pattern:    ^/
            anonymous: ~

            form_login:
                login_path: /login.html
                check_path: /login.html
            logout:
                path:   /logout
                target: /login.html

            switch_user: true

    access_control:
       - { path: ^/admin, roles: ROLE_ADMIN }
       - { path: ^/panel, roles: ROLE_USER }
       - { path: ^/ajax, roles: IS_AUTHENTICATED_FULLY }
       - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY}


Próbuję wrócić z użytkownika z rolą ROLE_USER na użytkownika z rolą ROLE_ADMIN, jednak otrzymuję błąd 403.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Damonsson
post
Post #2





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

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


Tam na tym ( http://symfony.com/doc/current/_images/web_debug_toolbar.png ) pasku na dole, po zalogowaniu się powinieneś mieć bliżej prawego końca nazwę użytkownika, kliknij to najlepiej otwórz w nowej karcie, powinien otworzyć się panel Security ( https://farm9.staticflickr.com/8673/1604772...7d6c07eef_o.png ) i to co może pomóc w diagnozie to wartości z wierszy:
Roles oraz Inherited Roles.

Profiler jest dostępny tylko w trybie developerskim. Jeżeli nie widzisz na dole profilera, to musisz mieć strukturę HTML w widoku, ewentualnie manualnie wyłączyłeś profiler.
Go to the top of the page
+Quote Post
wiciu010
post
Post #3





Grupa: Zarejestrowani
Postów: 195
Pomógł: 0
Dołączył: 29.04.2007

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


Cytat(Damonsson @ 6.06.2015, 18:51:57 ) *
Tam na tym ( http://symfony.com/doc/current/_images/web_debug_toolbar.png ) pasku na dole, po zalogowaniu się powinieneś mieć bliżej prawego końca nazwę użytkownika, kliknij to najlepiej otwórz w nowej karcie, powinien otworzyć się panel Security ( https://farm9.staticflickr.com/8673/1604772...7d6c07eef_o.png ) i to co może pomóc w diagnozie to wartości z wierszy:
Roles oraz Inherited Roles.

Profiler jest dostępny tylko w trybie developerskim. Jeżeli nie widzisz na dole profilera, to musisz mieć strukturę HTML w widoku, ewentualnie manualnie wyłączyłeś profiler.


Dla użytkownika z rolą ROLE_ADMIN mam tylko:

Kod
Security

Username    moj_mail@gmail.com
Authenticated?    yes
Roles    [ROLE_ADMIN]


Zaś po wykonaniu impersonate mam:

Kod
Security

Username    e-mail_uzytkownika@domena.pl
Authenticated?    yes
Roles    [ROLE_USER]


Czy tak powinno być?
Go to the top of the page
+Quote Post

Posty w temacie


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: 12.10.2025 - 12:20