2016-03-31 19 views
0

Ich habe gerade mit Spring 4 Sicherheit experimentiert. Ich bin das folgende Verfahren unter Verwendung der gesicherten Endpunkte zur Karte:Spring 4 Restful Security

@Override 
protected void configure(HttpSecurity http) throws Exception { 
    http 
     .csrf().disable() 
     .authorizeRequests() 
      .antMatchers(HttpMethod.GET, "/hello/*").hasRole("ADMIN") 
      .antMatchers(HttpMethod.GET, "/hello/**").hasRole("ADMIN") 
     .and() 
     .httpBasic() 
     .and() 
     .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS); 
} 

Es fiel mich ein, dass, wenn ich eine Menge von Endpunkten habe, dass die .antMatchers Struktur mühsam werden könnte.

Nur neugierig zu wissen, ob es einen alternativen Ansatz gibt, der "überschaubarer" sein könnte - ich denke, das ist ein bisschen subjektiv?

+0

Betrachten Sie [XML-Konfiguration] (https://github.com/gmazza/tightblog/blob/trunk/app/src/main/webapp/WEB-INF/security.xml#L34), wenn der Java-Weg auch wird umständlich für dich. –

+0

Es ist etwas ironisch in dem Sinne, dass Java Config die "Komplexität" von XML vermeiden soll - in diesem Fall könnte XML tatsächlich mehr Klarheit haben! – skyman

Antwort

1

Ich kann vorschlagen, eine Methode zu haben, um nur die Ameisenmatchers hinzuzufügen. Kann eine Map für den Pfad zur Rollenzuordnung sein und die Map in diese Methode einspeisen, um die Matching-Funktionen hinzuzufügen.

+0

Vielen Dank für diesen Gedanken - ich werde versuchen, etwas zu bauen. – skyman

Verwandte Themen