오늘은 회원가입 후 home으로 돌아가고 다시 사용자가 로그인해야되는 과정을 자동 로그인 방식으로 바꿔보겠습니다. 여담이지만 저는 로그인 다음에 게시글 목록 창으로 리다이렉트 시키는 작업도 해줬답니다. 별건 아니지만 그걸 이제서야 하는 나란 아이..
자동 로그인 구현
@PostMapping("/user/register")
public String signup(UserDto userDto,HttpServletRequest request,HttpServletResponse response) throws ServletException {
userService.saveUser(userDto,request,response);
request.login(userDto.getUsername(),userDto.getPassword());
return "redirect:/board/list";
}
예전 코드와의 차이점 보이시나요? 기존에는 userDto를 userService에 넘기고 리다이렉트 시키는 부분만 있었습니다. 지금은 HttpServletResponse와 HttpServletRequest를 매개변수로 받아왔습니다. 그리고 간단해요. request.login(유저id,유저비밀번호) 저 코드 한 줄이면 끝난답니다. 와웅..
Validate the provided username and password in the password validation realm used by the web container login mechanism configured for the ServletContext.
오라클 공식 문서에 따르면 웹 컨테이너 로그인 방식에 따라서 사용자 이름이랑 비밀번호를 유효성 검증하는 메서드인가봐요. 유효성까지는 생각도 못했는데 뜻밖의 내용을 알게 되었네요.
오늘의 목적은 이렇게 간단한 한 줄로 해결되었습니다. 짜잔!!
+ 추가로 저는 기존에 csrf().disable() 해놓다가 최근에 해당 부분을 삭제했죠. 그로 인해서 또! h2-console 접근이 불가능해졌습니다. 이쯤되면 그냥 mysql로 넘어가버릴까 싶고..
하지만 걱정마세요. 이것도 특정 url로 접근이 들어온다면 허용해버릴 수 있으니까요.
http().csrf().ignoringAntMatchers("/h2-console/**")
SecurityConfig에 해당 라인을 추가해주시면 자유로운 출입이 가능해진답니다!!
참고
https://stackoverflow.com/questions/3813028/auto-login-after-successful-registration
'web > spring&spring boot' 카테고리의 다른 글
[spring boot] 스프링 부트 게시판 글 조회 구현하기 (0) | 2021.05.20 |
---|---|
[spring boot] 스프링 부트 게시판 등록 구현하기(2) (0) | 2021.05.19 |
[spring boot] 로그아웃 기능 구현하기 (0) | 2021.05.15 |
[spring boot] 로그인 기능 구현하기 (0) | 2021.04.25 |
[spring boot] 회원가입 기능 구현하기(2) - SecurityConfig 작성 (0) | 2021.04.23 |