Symfony2+Twig: Mithilfe einer Vorlage sowohl für authentifizierte und anonyme Benutzer
Ich bin neu auf symfony und twig, und ich habe einige Kopfschmerzen mit Sicherheit, firewalls und Vorlagen.
Was ich versuche zu tun ist, um eine "Basis" - Vorlage, die zeigt, dass eine topbar. Ich möchte diese top-bar-Karte "Sie sind nicht eingeloggt", wenn der Benutzer nicht angemeldet ist und ein "Willkommen user U" - Nachricht, wenn der Benutzer angemeldet ist.
Weil dieser ich einen
{% if is_granted('IS_AUTHENTICATED_FULLY') %}
in der "base" - Vorlage zur Unterscheidung zwischen angemeldeten und anonymen Benutzern, aber ich habe Probleme, über das security context Token.
Meine öffentliche Wege (nicht gesichert durch firewall) sind:
/myapp/
/myapp/home
/myapp/about
/myapp/help
und später gibt es einige Wege für Aktionen, die nur Zugriff auf authentifizierte Benutzer:
/myapp/action1
/myapp/action2
...
/myapp/actionN
Das problem ist, sobald ein Benutzer angemeldet ist, in meiner "base" zeigen die Willkommens-Nachricht in der Ansicht von actions1, ..., actionN aber, wenn der Benutzer geht auf "home" oder "Hilfe" - Seiten, die die Meldung "Sie sind nicht angemeldet".
Einige hat eine ähnliche situacion? wie hast du es lösen? wie sind Ihre router-und security-Dateien konfiguriert?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die firewall nicht teilen, den Sicherheitskontext. Also, wenn eine Aktion ist nicht hinter der firewall können Sie nicht Zugang Benutzer-info. Versuchen Sie, die gesamte app hinter der firewall (und anonymen Benutzern erlauben):
Stellen Sie sicher, dass die login_path zugegriffen werden kann, die von anonymen Benutzern.