2017-03-17 4 views
0

Ich benutze Symfony 2.8 und ich importiere meine Übersetzungen in die Datenbank mit Hilfe der Lexik translation bundle - das erlaubt mir eine Route wie/admin/Übersetzungen, wo ich Statistiken sehen und weitere Übersetzungen hinzufügen kann (gut, der Kunde wird) .Wie können Lexik Translation Bundle-Routen abgesichert werden?

Das Problem ist, dass diese Route überhaupt keine Sicherheit hat. Ich kann einfach darauf zugreifen, ohne mich überhaupt anmelden zu müssen. Ich habe eine Anmerkung, die sicherstellt, dass Sie eine bestimmte Rolle haben, um auf die angegebene Route zuzugreifen.

Meine Frage ist, wie ich meine benutzerdefinierte Annotation zum Lexik-Controller hinzufügen kann, der die Übersetzungsvorlagen (wie Übersichts- und Grid-Seiten) rendert, ohne Code innerhalb des Bundles (Herstellerordner) zu schreiben. Gibt es eine Möglichkeit, es in der Konfiguration hinzuzufügen?

+0

, wie Sie eigentlich die Sicherheit umgehen? Welche Art von Anmerkungen verwendest du? – Matteo

+0

Wenn diese Route (oder alle Routen in einer Klasse) zum Beispiel nur für den Administrator sichtbar sein soll, verwende ich @RequiresRole ({"Administrator"}) Dies ist eine benutzerdefinierte Annotation. Administrator ist auch eine benutzerdefinierte Rolle, es ist nicht registriert in Symfony Config oder irgendetwas. Deshalb stelle ich meine Frage: Wie kann ich meine eigenen Anmerkungen zu den Übersetzungsrouten des Lexik-Pakets hinzufügen, ohne ihren Code direkt zu bearbeiten? –

+0

Sie sollten einen Führer der Yaml-Typ-Anzeigenbeispiel implementieren, so dass Sie außerhalb des Codes – Matteo

Antwort

0

In Ihrem security.yml Sie brauchen nur Zugriffskontrolle auf der Admin-Pfad hinzufügen

access_control: 
    - { path: ^/admin, role: ROLE_ADMIN } 
+0

konfigurieren können Dies beantwortet meine Frage nicht. Ich benutze diese Methode nicht, um Benutzer zu beschränken, ich habe keine Konfiguration, die die Rollen definiert. Die Rollen sind in meiner Datenbank definiert und ich habe bereits eine Anmerkung, die ich in allen meinen Controllern verwende. Ich möchte dem Lexik-Controller die gleiche Anmerkung hinzufügen. –

Verwandte Themen