![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bipAAJ/btqx8BgFZsU/jtQe2Oo9hZgn9vTJuzAlmK/img.png)
Spring Security - InMemory User 사용하기 시큐리티가 기본적으로 생성해주는 User를 사용하는것이 아닌 우리가 직접 생성한 유저정보를 사용하도록 설정한다. 기본 시큐리티 유저 커스터마이징 하기 스프링 부트 애플리케이션을 실행하면 다음과 같이 Log에 매번 새로운 비밀번호가 설정된 것이 남는다. 이러한 자동 설정은 어디서 오는것일까 ? 로그에서 그 힌트를 제공하고 있다. UserDetailsServiceAutoConfiguration UserDetailsServiceAutoConfiguration 다음은 우리가 Log에서 힌트를 얻었던 UserDetailsServiceAutoConfiguration 클래스이다. 이중에서 유심히 살펴봐야 할것은 inMemoryUserDetailsMan..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/eq4lKX/btqx8UNs2Rv/KOlGb5nCR5v0W8TKoCj8kk/img.png)
Spring Security - Security 설정하기 스프링 시큐리티 설정을 적용한다. 부트가 제공하는 자동설정 외에 커스터마이징을 진행한다. 설정파일 config/SecurityConfig 클래스를 생성한다. @Configuration 애노테이션으로 설정 클래스 임을 스프링에게 알려준다. @EnableWebSecurity WebSecurity 적용을 알린다. 기존의 스프링부트가 제공하던 자동설정들은 모두 무시 된다. WebSecurityConfigurerAdapter 스프링 시큐리티 설정을 편리하게 하기위한 클래스이다. 시큐리티 설정은 주로 WebSecurityConfigurerAdapter 의 Method를 Override 하는 방식으로 한다. 시큐리티 설정 HttpSecurity를 활용하여 설정..
Spring Security - Security 적용하기 스프링 부트를 활용해서 스프링 시큐리티를 적용한다. 의존성만 추가하여도 스프링부트가 제공하는 기본적인 스프링 시큐리티 자동설정이 적용된다. 의존성 org.springframework.boot spring-boot-starter-security 기존의 문제 2가지 해결이된다. 기존의 문제점 인증 방법이 존재하지 않음 인증 방법이 존재하지않아 현재 사용자가 누구인지 알 방법이 없다. 부트가 제공하는 자동설정 기본 유저가 생성된다 기본 username user 기본 password console에 매번 새로운 password가 지정된다. 모든 요청이 인증을 필요로 하게 된다. 로그인을 하면 이전과 같이 NullPointerException이 발생하지않고..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bjU1QB/btqx2TPDcHP/Lkr6XUJJj33nl7qk9w3xwk/img.png)
Spring Security - Project Init 프로젝트 생성 의존성 Spring Boot 2.1.7 lombok thymeleaf devtools Index 페이지 만들기 프로젝트를 생성하면 classpath:resources 디렉터리 하위에 templates 디렉터리가 존재한다. 만약 없다면 생성해줄것 해당 디렉터리 하위에 index.html 파일을 생성한다. Template Engine으로 Thymeleaf 를 사용한다. Thymeleaf 를 사용하기위해서는 namespace 선언을 필요로한다. Thyleaf 사용을 위한 namespace 선언부 :th 에 해당하는 부분은 일종의 alias이다. 원한다면 다른 alias를 지정할 수 있다. namespace를 선언하고나면 thymeleaf 표..