Quali sono le migliori strategie per proteggere l'app GWT + Tomcat per eseguire l'autenticazione e l'autorizzazione?GWT e autenticazione
15
A
risposta
14
Therea sono due strategie di base:
- fissare i punti di ingresso;
- proteggere i servizi remoti.
Fissare i punti di ingresso
Il modo più semplice è quello di limitare l'accesso ai file js/HTML generato da GWT che utilizzano regolarmente gli strumenti di sicurezza delle applicazioni web:
- Primavera di sicurezza;
- vincoli web.xml.
Questo può consentire di avere un es. AdminEntryPoint
e UserEntryPoint
.
garantire i servizi remoti
Se la soluzione di cui sopra non è sufficiente, si può scavare più a fondo. L'ho fatto con Spring Security. Non ho trovato un modo pulito al 100% di integrare Spring Security con GWT, quindi ho aggiunto un po 'di colla. Brevemente:
- creato un'annotazione
@AllowedRoles
che enumera i ruoli utente autorizzati ad accedere a tale metodo di servizio; - creato un
UserDetailsService
che consente l'ispezione dell'utente corrente (vedere the SecurityContextHolder javadoc per i dettagli); - creato un aspetto Spring che corrisponde a tutti i metodi annotati con l'annotazione precedente. Usa il servizio per recuperare i ruoli dell'utente corrente e lancia un'eccezione controllata per segnalare un accesso illegale;
- modificato tutti i metodi di servizio per generare l'eccezione di sicurezza.
Problemi correlati
- 1. Differenza tra gwt-ext e ext-gwt
- 2. GWT e .NET
- 3. CellTables e css (GWT)
- 4. GWT e Generics
- 5. Confronta GWT e Django?
- 6. integrare Bootstrap e GWT
- 7. Differenza tra gwt, gwt-rpc, ext-gwt, smart gwt
- 8. GWT e WebSocket/Invio dati dal server al client GWT
- 9. GWT FlexTable prestazioni e ottimizzazione
- 10. Decidere tra extJS e GWT
- 11. Moduli GWT e pagine Web
- 12. Guava r07, GWT e javax.annotation.Nullable
- 13. @WebServlet annotation e GWT RPC
- 14. Tutorial e guida smart gwt
- 15. GWT RequestFactory e richieste multiple
- 16. Ext GWT vs GWT-EXT
- 17. GWT: UiBinder o GWT Designer?
- 18. WCF e autenticazione
- 19. Autenticazione mono e ASP.NET
- 20. Backbone.js e autenticazione utente
- 21. Autenticazione JSF e autorizzazione
- 22. CouchApps e autenticazione utente
- 23. Swift NSURLSessione e autenticazione
- 24. Autenticazione WCF e Kerberos
- 25. PowerShell, svn e autenticazione
- 26. Database e autenticazione Jenkins
- 27. Autenticazione NTLM e smartcard
- 28. WebServiceHostFactory e autenticazione IIS
- 29. Autenticazione Siteminder e Android
- 30. Esempio OpenID GWT semplice
Robert, potresti fornire un codice di esempio dell'aspetto menzionato? (è dove ho spinto) –