Программисты JAVA общаются здесь
-
Anonymous
Добавьте базовую аутентификацию Swagger в приложение Spring Boot
Сообщение
Anonymous »
Требования:
- Приложение Spring Boot с Springfox
- Добавление аутентификации BASIC в Swagger
Передавать все остальные запросы
Код: реализован
Код: Выделить всё
@EnableWebSecurity
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/swagger-resources/*", "*.html", "/api/v1/swagger.json")
.hasAuthority("SWAGGER")
.anyRequest().permitAll()
.and()
.httpBasic()
.and()
.csrf().disable();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication().withUser("admin").password("admin").authorities("SWAGGER");
}
}
Однако этот код не работает — вы можете свободно просматривать /swagger-ui.html#/ без какой-либо аутентификации.
Вопрос: почему аутентификация и пользователь BASIC не применяются к конечной точке пользовательского интерфейса Swagger?
Подробнее здесь:
https://stackoverflow.com/questions/500 ... g-boot-app
1722797260
Anonymous
Требования:
[list]
[*]Приложение Spring Boot с Springfox
[*]Добавление аутентификации BASIC в Swagger
Передавать все остальные запросы
[/list]
Код: реализован
[code]@EnableWebSecurity
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/swagger-resources/*", "*.html", "/api/v1/swagger.json")
.hasAuthority("SWAGGER")
.anyRequest().permitAll()
.and()
.httpBasic()
.and()
.csrf().disable();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication().withUser("admin").password("admin").authorities("SWAGGER");
}
}
[/code]
Однако этот код не работает — вы можете свободно просматривать /swagger-ui.html#/ без какой-либо аутентификации.
Вопрос: почему аутентификация и пользователь BASIC не применяются к конечной точке пользовательского интерфейса Swagger?
Подробнее здесь: [url]https://stackoverflow.com/questions/50024317/add-swagger-basic-auth-to-spring-boot-app[/url]