Как протестировать API с веб-аутентификацией Spring Boot и Postman?

#java #spring #spring-boot #spring-security

#java #spring #spring-boot #spring-безопасность

Вопрос:

В настоящее время я создаю RESTful-сервис часто задаваемых вопросов с Spring Boot. Я использую Spring Security для веб-аутентификации, поэтому пользователю требуется правильный пароль и имя пользователя для просмотра страницы. Эти данные также подключены к базе данных MySQL. В данный момент я работаю над функцией импорта / загрузки файлов Excel. Но я на самом деле не могу это протестировать, потому что каждый раз, когда я отправляю запрос GET в Postman, я всегда получаю страницу входа в Spring Boot security. Есть ли способ передать это через baypass или указать Postman автоматически входить в систему с правильным именем пользователя и паролем?

Ответ №1:

При использовании PermitAll это означает каждого аутентифицированного пользователя, однако вы отключили анонимный доступ, чтобы это не сработало. Что вы хотите, так это игнорировать определенные URL-адреса для переопределения метода configure, который принимает объект WebSecurity, и игнорировать шаблон.

 @Override
public void configure(WebSecurity web) throws Exception {
    web.ignoring().antMatchers("/api/v1/signup");
}
  

И удалите эту строку из части HttpSecurity. Это заставит Spring Security игнорировать этот URL-адрес и не применять к ним никаких фильтров.