2017-05-02 3 views
0

Ich bin auf der Suche nach einer Idee (-s) wie kann ich solche Aufgabe in Symfony3 oder allgemein in Symfony lösen.Symfony3. Zugriff auf den geschützten On-Demand-Benutzer-Inhalt

Lassen Sie mich sagen, dass ich dem Benutzer erlauben, einige Inhalte auf der Seite (d. H. Post oder Artikel) zu erstellen. Die Sache ist, dass ein Teil dieses Inhalts auf Anfrage des Benutzers eingeschränkt werden kann. So zum Beispiel Benutzer erstellt Article1 und Article2 und er spezifizierte, dass Article2 durch ein bestimmtes Passwort/Token von sich selbst geschützt sein wird. Wenn jemand anonym versucht, über URL Artikel1 zu erreichen, wird er den Inhalt sehen können, aber wenn jemand die URL von Artikel2 benutzt, erscheint ein Formular mit dem Hinweis "Passwort für den Zugang zu diesem bestimmten Bereich eingeben" oder ähnlich.

Gibt es eine Möglichkeit, das in der symfony 3 Weg zu lösen?

Im Moment würde ich das auf eine solche Weise lösen, dass in der Steuerung (d. H. ShowArticleAction) werde ich überprüfen, ob der angeforderte Artikel geschützt ist oder nicht. Wenn nicht der normale Weg benutzt wird (Render von template etc), aber wenn der Abschnitt geschützt ist, würde ich den Benutzer zu einem zusätzlichen "login controler" umleiten, wo er das Passwort nur für diesen spezifischen Inhalt setzen könnte. Wenn das Passwort übereinstimmt, wird er zum geschützten Artikel weitergeleitet.

Ich möchte nicht acl oder ähnliches verwenden, da jeder Inhalt seinen eigenen Schutz haben kann und mit acl würde ich dynamische Gruppen für jeden geschützten Artikel erstellen müssen, da Benutzer, die Zugriff auf Artikel 2 haben, nicht auf andere geschützte zugreifen können Artikel wie es kann völlig anderen Schutz über Passwort/Token und auch von verschiedenen Benutzern erstellt werden

Wie ich bereits erwähnt, ich möchte es tun, folgen Sie den "symfony3" Regeln, ohne irgendwelche Tricks von meiner oder irgendeiner Seite :)

Ich bin froh, Ihre Ideen und Hinweise zu lesen.

Mit freundlichen Grüßen, Konrad

Antwort

0

Ich glaube, ich es herausfinden und wird symfony Wähler für diesen Zweck verwenden. Laut Dokumentation macht es meistens genau das, was ich brauche.

Verwandte Themen