inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 시큐리티 완전 정복 [6.x 개정판]

InMemoryUser 방식으로 사용자 인증 확인중

190

aanicall

작성한 질문수 10

0

코드상에서 사용자를 여러명 생성해서 인증 테스트 중입니다.

 

application.yml 파일에 user 1명 생성해서 할 때는 정상적으로 잘 동작하는데요

SecurityConfig 파일에 사용자를 코드로 생성해서 구동하면 정상적으로 실행되지 않습니다.

코드를 따라했음에도 불구하고 스프링 구동 로그에 패스워드가 뜨는걸 보면 해당 설정이 제대로 동작되지 않는것 같습니다.

 

스프링 부트 버전 3.2.5

 

package com.example.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.Customizer;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.core.userdetails.User;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
import org.springframework.security.web.SecurityFilterChain;

@EnableWebSecurity
@Configuration
public class SecurityConfig
{
    @Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception
    {
        http
                .authorizeHttpRequests(auth -> auth.anyRequest().authenticated())
                .formLogin(Customizer.withDefaults());
        return http.build();
    }

    @Bean
    public UserDetailsService userDetailsService()
    {
        UserDetails user = User.withUsername("user").password("{noop}1111").roles("USER").build();
        UserDetails user2 = User.withUsername("user2").password("{noop}1111").roles("USER").build();
        UserDetails user3 = User.withUsername("user3").password("{noop}1111").roles("USER").build();
        return  new InMemoryUserDetailsManager(user, user2, user3);
    }
}

실행 코드 입니다.

 

application.yml 파일과 동시에 실행하면 application.yml 파일의 사용자로 동작하며

application.yml의 정보를 삭제하고 실행하면 구동 로그에 패스워드가 뜨면서 위의 사용자 정보로 동작하지 않습니다. 어떤 부분을 확인해 봐야 할까요? 스프링 부트 버전 차이일 까요?

spring spring-boot spring-security security web-security

답변 1

0

정수원

코드만 봐서는 정확한 원인을 파악하기 힘들 것 같습니다.

전체 소스를 공유 해 주시기 바랍니다.

로그아웃-logout()-2 강에서 겟방식 로그아웃 호출 후 화면이동 질문입니다.

0

36

2

단원별 소스코드

0

66

2

CustomAuthenticationProvider 추가 관련 문의

0

78

2

AOP 의존성 명칭 변경

0

77

1

빈 1개 등록 시 다른 해결 방법

0

70

1

@Bean으로 AuthenticationProvider를 등록 시 http.authenticationProvider 함수를 이용해서 추가해줘야되나요?

0

87

2

OIDC의 id token에 담긴 데이터에 대해

0

78

1

loginPage("/loginPage") 질문드립니다.

0

70

1

@EnableWebSecurity

0

148

1

트랜잭션과 롤백

0

100

1

68. 인증 이벤트 - AuthenticationEventPublisher 활용 강좌 음성 문제

0

91

2

AuthenticationManager 사용 방법

0

153

2

HttpSecurity.authorizeHttpRequests() - 2 강의 부분에 대한 질문

0

108

2

spring security 6.3에서는 HttpSecurity가 만들어지기 전 WebSecurity가 먼저 만들어지는게 맞나요??

0

193

1

init(B Builder), configure(B builder) 에 대하여 질문 드립니다.

0

109

2

메타 주석 질문

0

69

1

동시세션제어 기능에서 로그아웃하기

0

153

3

로그인 후, redirect 에서 error

0

141

3

Session 생성 타이밍에 대한 질문

0

86

2

강의 참고 내용을 개발 로그로 작성해도 될지 문의드립니다.

0

135

2

customAuthentication 관련

0

132

2

authenticationManagerBuilder 주입받은거 vs 만든 거

0

114

1

UserDetailsService()에서 UserDetail이 아닌 타입을 반환할 수 있나요?

0

101

1

9:28 패턴 3의 경우 마지막으로 설정한 것만 적용되는 것 같습니다.

0

162

2