Я смотрю Amigoscode на Youtube и следую его руководству о том, как настроить безопасность весенней загрузки, но оно немного устарело, и большинство вещей устарели. Может ли кто-нибудь помочь мне настроить SecurityConfiguration, это мой код (также я не могу найти много информации в Интернете, как Найди решение):
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.csrf(csrf -> csrf.disable())
.authorizeHttpRequests()
.requestMatchers("")
.permitAll()
.anyRequest()
.authenticated()
.and()
.sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.authenticationProvider(authenticationProvider)
.addFilterBefore(jwtAuthFilter, UsernamePasswordAuthenticationFilter.class);
return http.build();
}
это код, который он предоставляет в учебнике.
Честно говоря, код, который вы предоставили, совсем не кажется устаревшим.
он выделен красным и говорит, что он устарел, и маркер для удаления for(.authorizeHttpRequests(),.and(),.sessionManagement())
Реализация безопасности amigoscodes spring очень небезопасна и очень плоха, и ее следует удалить. Он реализует JWT как сеансы, что очень небезопасно. Он не читал ни одной строчки в документации по безопасности Spring, и этот учебник просто создает проблемы, обучая людей очень плохим практикам.
если вы хотите изучить весеннюю безопасность, я предлагаю вам прочитать документацию и начать с реализации formlogin с использованием файлов cookie сеанса. Прочтите docs.spring.io/spring-security/reference/servlet/… и docs.spring.io/spring-security/reference/servlet/authentication/… , а затем внедрите docs.spring .io/spring-security/reference/servlet/authentication/…




так и должно быть, потому что функционал устарел
@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.csrf(AbstractHttpConfigurer::disable)
.authorizeHttpRequests(authorize -> authorize.requestMatchers("/api/v1/auth/**","/swagger-ui/**","/v3/api-docs/**").permitAll()
.anyRequest()
.authenticated()
)
.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
.authenticationProvider(authenticationProvider);
http.addFilterBefore(jwtAuthFilter, UsernamePasswordAuthenticationFilter.class);
return http.build();
}
какая у тебя ошибка? Вы можете добавить трассировку стека или что-то в этом роде?