diff --git a/spring-boot-modules/spring-boot-swagger-jwt/src/main/java/com/baeldung/swaggerjwt/configuration/SwaggerConfiguration.java b/spring-boot-modules/spring-boot-swagger-jwt/src/main/java/com/baeldung/swaggerjwt/configuration/SwaggerConfiguration.java index 240a21cd21..e5e87de3ec 100644 --- a/spring-boot-modules/spring-boot-swagger-jwt/src/main/java/com/baeldung/swaggerjwt/configuration/SwaggerConfiguration.java +++ b/spring-boot-modules/spring-boot-swagger-jwt/src/main/java/com/baeldung/swaggerjwt/configuration/SwaggerConfiguration.java @@ -2,6 +2,7 @@ package com.baeldung.swaggerjwt.configuration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; + import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.*; @@ -16,47 +17,40 @@ import java.util.List; @Configuration public class SwaggerConfiguration { - public static final String AUTHORIZATION_HEADER = "Authorization"; + public static final String AUTHORIZATION_HEADER = "Authorization"; - private ApiInfo apiInfo() { - return new ApiInfo("My REST API", - "Some custom description of API.", - "1.0", - "Terms of service", - new Contact("Sallo Szrajbman", "www.baeldung.com", "salloszraj@gmail.com"), - "License of API", - "API license URL", - Collections.emptyList()); - } + private ApiInfo apiInfo() { + return new ApiInfo("My REST API", "Some custom description of API.", "1.0", "Terms of service", new Contact("Sallo Szrajbman", "www.baeldung.com", "salloszraj@gmail.com"), "License of API", "API license URL", Collections.emptyList()); + } - @Bean - public Docket api() { - return new Docket(DocumentationType.SWAGGER_2) - .apiInfo(apiInfo()) - .securityContexts(Arrays.asList(securityContext())) - .securitySchemes(Arrays.asList(apiKey())) - .select() - .apis(RequestHandlerSelectors.any()) - .paths(PathSelectors.any()) - .build(); - } + @Bean + public Docket api() { + return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()) + .securityContexts(Arrays.asList(securityContext())) + .securitySchemes(Arrays.asList(apiKey())) + .select() + .apis(RequestHandlerSelectors.any()) + .paths(PathSelectors.any()) + .build(); + } - private ApiKey apiKey() { - return new ApiKey("JWT", AUTHORIZATION_HEADER, "header"); - } + private ApiKey apiKey() { + return new ApiKey("JWT", AUTHORIZATION_HEADER, "header"); + } - private SecurityContext securityContext() { - return SecurityContext.builder() - .securityReferences(defaultAuth()) - .build(); - } + private SecurityContext securityContext() { + return SecurityContext.builder() + .securityReferences(List.of(defaultAuth())) + .operationSelector(o -> o.requestMappingPattern() + .matches("/.*")) + .build(); + } - List defaultAuth() { - AuthorizationScope authorizationScope - = new AuthorizationScope("global", "accessEverything"); - AuthorizationScope[] authorizationScopes = new AuthorizationScope[1]; - authorizationScopes[0] = authorizationScope; - return Arrays.asList(new SecurityReference("JWT", authorizationScopes)); - } + private SecurityReference defaultAuth() { + return SecurityReference.builder() + .scopes(new AuthorizationScope[0]) + .reference("JWT") + .build(); + } }