2014-04-10 15 views
6

Ho trovato che Dropwizard è un framework straordinario per creare rapidamente servizi REST e la maggior parte dei miei clienti aziendali sono presi cura di questo f/w tranne uno. Fornisce un meccanismo per proteggere il tuo servizio, ma non è così vasto come Spring Security.Integrazione di Dropwizard con Spring Security

Voglio capire come questi due possono sposarsi e se incollarli insieme è giusto o meno. Eventuali suggerimenti?

risposta

11

Sono riuscito a integrare Spring Security con Dropwizard nel progetto appena completato. Spring Security è in realtà solo un ServletFilter glorificato che puoi aggiungere all'applicazione Dropwizard.

Jacek Furmankiewicz ha un piccolo progetto di esempio che integra Spring con Dropwizard e questa è la parte specifica su come aggiungere il filtro Spring Security all'app DW.

https://github.com/jacek99/dropwizard-spring-di-security-onejar-example/blob/master/src/main/java/com/github/jacek99/myapp/MyAppService.java

Una cosa da tenere a mente con l'esempio fornito è che questo è per Dropwizard 0.6.2 e la versione corrente è consigliata 0.7.0.

Così, invece di questo (0.6.2): ​​

environment.addFilter(DelegatingFilterProxy.class,"/*").setName("springSecurityFilterChain"); 

uso questo:

FilterRegistration.Dynamic filterRegistration = environment.servlets().addFilter("springSecurityFilterChain", DelegatingFilterProxy.class); 
filterRegistration.addMappingForUrlPatterns(EnumSet.allOf(DispatcherType.class), false, "/*"); 

-Matt