Ich mache eine Scala - Play-Anwendung und ich möchte einen Benutzer trennen, wenn ein Administrator sein Recht ändern. Beispiel: Wenn ein Benutzer angemeldet ist und ein Administrator sein Konto auf den Admin-Typ aktualisiert, möchte ich diesen Benutzer trennen. Wie kann ich das tun?Play Framework - Trennen Sie einen Benutzer
Antwort
Wenn Sie die userId
in der Session
gespeichert haben, müssen Sie die Rechte des Benutzers in der Session
hinzufügen.
So, wenn der Benutzer verbindet, können Sie seine Rechte von der Sitzung zu denen in Ihrer Datenbank überprüfen. Wenn sie nicht übereinstimmen, können Sie den Benutzer auf die Anmeldeseite umleiten.
Okay, aber mein Problem ist nicht, wenn der Benutzer verbindet, aber wenn er bereits verbunden ist und ich sein Recht für ein weniger permissives Recht ändern, kann er die alte Seite von seiner alten Rolle konsultieren, wie er es tat 't disconnected –
Wenn der Benutzer eine Seite zum Server abfragt, prüfen Sie bereits, ob der Benutzer verbunden ist: wahrscheinlich mit einer 'SecuredAction' und prüfen, ob eine' userId' in der Sitzung definiert ist. Sie müssen die andere Überprüfung dort hinzufügen: Wenn er die Rolle nicht hat, senden Sie einen Fehler, andernfalls senden Sie die Seite – vdebergue
nur alle Grundlagen abzudecken, da hier die Antwort ausdrücklich davon abhängig, wie Ihre Anwendung bestimmt, ob ein Benutzer angemeldet ist:
wenn Benutzer-Auth mit einem Token von einem Geheimnis erzeugt getan, die auf Ihrem Benutzer gespeichert modellieren und bei jeder Anfrage auf Gültigkeit überprüfen, können Sie ein neues Geheimnis für den Benutzer generieren und alle vorhandenen Token werden ungültig.
- 1. Trennen Sie einen Benutzer von Hostednetwork
- 2. Play-Framework, Scala: authentifizieren Benutzer nach Rolle
- 3. Scala Play Framework bekommen Benutzer-IP-Adresse
- 4. Verwenden Sie Play Framework als Komponente
- 5. Benutzerdefinierter Basispfad play framework
- 6. Play Framework CORS Header
- 7. Play Framework 2.1.1 Bereitstellungsprobleme
- 8. play framework - ajax call
- 9. Play Framework Inject Error
- 10. Benutzerverwaltung mit Play! Framework 2.0.3
- 11. RESTful auf Play! framework
- 12. Play Framework renderJSON Problem
- 13. play framework @Required
- 14. Play Framework Forms (Java)
- 15. Play-Framework und JNotify
- 16. Play Framework: WebSocket Verbindungszeitüberschreitung
- 17. play framework installation
- 18. Java Play Framework Fluss
- 19. play framework sichere config
- 20. Play Framework Asset Pipeline
- 21. Logback mit Play-Framework
- 22. play framework atmosphere
- 23. Play Framework 2.5 Formularfeldüberprüfung
- 24. play framework app authentication, benutzerverwaltung
- 25. Objectify mit Play Framework 2
- 26. CSS Live-Bearbeitung - Play Framework
- 27. Play Framework - neue Verzeichnisse zum Klassenpfad hinzufügen
- 28. Play Framework 2.0: Benutzerdefinierte Formatierer
- 29. Entity Framework - Entitäten trennen und neu anfügen?
- 30. Play Framework Set Download Dateiname
Es hängt davon ab, wie Sie feststellen, ob ein Benutzer angemeldet ist? Speichern Sie die Benutzer-ID in der Sitzung? – vdebergue
Y'es Ich speichere die userId –