inflearn logo
Khóa học

Khóa học

Chia sẻ kiến thức

Bài viết của dkfvktorco

dkfvktorco dkfvktorco

@dkfvktorco

Số lượng đánh giá đã viết
-
Xếp hạng trung bình
-

Bài viết 3

Hỏi & Đáp

커스텀 필터 적용 안됨

@Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { AuthenticationManager authenticationManager = http.getSharedObject(AuthenticationManager.class); return http .csrf(AbstractHttpConfigurer::disable) .sessionManagement((sessionManagement) -> sessionManagement.sessionCreationPolicy(SessionCreationPolicy.STATELESS) ) .formLogin(withDefaults()) .httpBasic(withDefaults()) .addFilter(corsConfig.corsFilter()) .addFilter(new JwtAuthenticationFilter(authenticationManager)) .addFilter(new JwtAuthorizationFilter(authenticationManager, userRepository)) .authorizeRequests(requests -> requests .requestMatchers("/user/**").authenticated() .requestMatchers("/admin/**").access("hasAuthority('ADMIN')") .anyRequest().permitAll() ) .build(); } 커스텀 필터를 적용 안하고 커스텀 필터에 코드를 filterchain에 작성하면 어떨까 싶어 위와 같이 작성해보았었으나, 빨간 줄은 안 뜨지만 디버깅해보니 authenticationManager가 null이라고 나왔었습니다..

Lượt thích
0
Số bình luận
1
Lượt xem
967

Hỏi & Đáp

로그인 올바르게 해도 login?error로 갑니다

알아냈습니다... loadUserByUsername 위 메소드는 UserDetailsService 에 정의된 메소드에요 그래서 아이디를 username, 비밀번호는 password가 아닌 다른 이름, 다른 걸 받을 경우 config에 이를 명시해줘야 합니다. 명시 방법은 다음과 같아요. .usernameParameter("userEmail") .passwordParameter("userPassword") 저는 username이 아닌 userEmail password가 아닌 userPassword라는 이름으로 값을 받습니다. password라는 이름에 해당하는 값이 없으니 로그인이 안됐던 거에요..하하하하

Lượt thích
0
Số bình luận
1
Lượt xem
1418