-
카테고리
-
세부 분야
백엔드
-
해결 여부
해결됨
스프링 시큐리티 최신버전 코드 있을까요?
23.12.01 10:52 작성 조회수 1.01k
0
제일 최근에 질문한 글 참고해도 적용이 안되네요...
혹시 현재 버전에서 적용 가능한 코드가 있을까요?
아니면 참고할 수 있는 자료라도 있을까요?
https://start.spring.io/ 에서 gradle로 생성해서 사용중입니다. 스프링 3.2버전 사용하고있어요.
답변을 작성해보세요.
0
Dowon Lee
지식공유자2024.02.02
안녕하세요, 이도원입니다.
강좌에서 사용된 샘플 코드를 최신 버전으로 업데이트 하였습니다.
아래 github 에서 확인해 보실 수 있습니다.
https://github.com/joneconsulting/toy-msa
감사합니다.
0
흑후추
질문자2024.01.05
섹션 4. Users Microservice ➀ Spring Security 코드 입니다.
@Configuration
@EnableWebSecurity
public class WebSecurity {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.csrf(csrf->csrf.disable());
http.authorizeHttpRequests(request->{
request.requestMatchers(antMatcher("/users/**")).permitAll();
request.requestMatchers(antMatcher("/h2-console/**")).permitAll();
});
http.headers(headers->headers.frameOptions(frameOptions->frameOptions.disable()));
return http.build();
}
}
0
흑후추
질문자2023.12.08
여기 코드 참고해서 작성했습니다.
섹션6 기준으로 나머지 코드는 변수명 정도만 수정했고, WebSecurity코드는 이렇게 바꿔서 사용했어요.
@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
public class WebSecurity {
private final UserService userService;
private final Environment environment;
private final AuthenticationConfiguration authenticationConfiguration;
private final AuthenticationManager authenticationManager;
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.csrf(AbstractHttpConfigurer::disable)
.authorizeHttpRequests(request ->{
request.requestMatchers(antMatcher("/**")).permitAll();
})
.addFilter(getAuthenticationFilter(authenticationConfiguration));
http.headers().frameOptions().disable(); //H2 Console 설정
return http.build();
}
private AuthenticationFilter getAuthenticationFilter(AuthenticationConfiguration authenticationConfiguration) throws Exception {
AuthenticationFilter authenticationFilter = new AuthenticationFilter(authenticationManager, userService, environment);
return authenticationFilter;
}
}
0
정호연
2023.12.05
이게 답변이 될 수 있을지 모르겠는데요.. 저도 공부하면서 뭔가 틀려서 여러 삽질을 통해서 코드 변경해가면서 하고 있어서
@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
public class WebSecurity {
private final UserService userService;
private final BCryptPasswordEncoder bCryptPasswordEncoder;
private final Environment env;
private final AuthenticationConfiguration authenticationConfiguration;
@Bean
public WebSecurityCustomizer webSecurityCustomizer() {
return (web) -> web.ignoring().requestMatchers(PathRequest.toStaticResources().atCommonLocations());
}
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http.csrf().disable()
.authorizeRequests()
.antMatchers("/actuator/**").permitAll();
http.csrf().disable()
.authorizeRequests().antMatchers("/**")
.hasIpAddress("192.168.0.7")
.and()
.addFilter(getAuthenticationFilter(authenticationConfiguration))
.headers().frameOptions().disable();
return http.build();
}
private AuthenticationFilter getAuthenticationFilter(AuthenticationConfiguration authenticationConfiguration) throws Exception {
AuthenticationFilter authenticationFilter = new AuthenticationFilter(authenticationManager(authenticationConfiguration), userService, env);
return authenticationFilter;
}
@Bean
AuthenticationManager authenticationManager(AuthenticationConfiguration authenticationConfiguration) throws Exception {
return authenticationConfiguration.getAuthenticationManager();
}
}
0
인프런 AI 인턴
2023.12.03
안녕하세요, 인프런 AI 인턴입니다.
스프링 시큐리티를 사용하는 데 문제가 있으시군요.
스프링 부트 참조 문서의 “18. “How-to” Guides > 18.14. Security” 섹션을 참고하시면 현재 버전의 스프링 부트에 적용 가능한 스프링 시큐리티 관련 정보를 얻으실 수 있습니다.
자세한 내용과 가이드는 스프링 시큐리티 프로젝트 페이지에서 확인하실 수 있습니다.
또한, 스프링 부트에 관련된 다양한 상황의 질문과 답변이 필요하다면 Stack Overflow의 spring-boot
태그가 붙은 글을 참조하시거나, 새 질문을 하실 수도 있습니다.
현재 문서는 스프링 부트 3.1.5 버전을 기준으로 하고 있지만, 스프링 부트 3.2 버전에서도 동일하게 적용될 수 있는 내용이 많으니 참고하시면 도움이 될 것입니다.
참고 문서 URL: Spring Boot Reference Documentation - Security
오류가 지속되거나 구체적인 코드를 찾기 어려우시면, 추가적으로 문의 주시면 답변 드리도록 하겠습니다. 흑후추님, 문제 해결을 위한 참고 자료가 도움이 되길 바랍니다.
답변 5