2016-12-16 3 views
3

Ich werde Springfox (2.6.1v) mit Swagger-Ui in meinem Spring Boot (1.4.2v) verwenden.Erhalten Sie Zugang zu Springfox Swagger-Ui hinter Feder-Sicherheit

Die Konfiguration sieht es aus:

@Configuration 
@EnableSwagger2 
public class SwaggerConfig { 

    @Bean 
    public Docket api() { 
    return new Docket(DocumentationType.SWAGGER_2) 
       .select() 
       .apis(RequestHandlerSelectors.any()) 
       .paths(PathSelectors.any()) 
       .build() 
       .genericModelSubstitutes(ResponseEntity.class); 
    } 
} 

Das Problem ist, dass meine Prahlerei hinter Frühling Sicherheit ist und ich brauche es von admin nur den Zugang zu ermöglichen.

Frage ist, was die Menge des Matcher sein sollte Prahlerei-ui arbeitet in meiner Anwendung zu ermöglichen?

public class SecurityConfig extends WebSecurityConfigurerAdapter { 

    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
    http.authorizeRequests() 
     .antMatchers("??? <<<what_should_be_here>>> ???") // what should be here? 
     .hasRole("TENANT_ADMIN"); 
    } 
} 

Antwort

1

Ok erst ich gefunden habe, die Lösung here so folgende Zeilen:

.antMatchers("/admin/system/state/*", "/v2/api-docs", "/configuration/ui", "/swagger-resources", "/configuration/security", "/swagger-ui.html", "/webjars/**") 

Aber noch etw funktionierten nicht und aus diesem Grunde habe ich diese Frage gestellt. Nach eingehenderer Untersuchung ist jedoch aufgefallen, dass der Spring-Fox GSON nicht unterstützt. Wenn Sie GSON als "zu json" Konverter Swagger-Ui verwendet ein etwas anderes JSON-Format, was Probleme verursacht ...

Wenn wir Konverter nach Jackson geändert und oben Pfade zu Spring-Config hinzugefügt hat funktioniert es ohne Probleme.

Ich habe gebeten, auch die neue Funktion auf feder Fuchs Github here.

Verwandte Themen