
🤍스프링 시큐리티 구현하기 스프링 시큐리티는 스프링 기반의 애플리케이션(인증, 권한, 인가 등)을 담당하는 스프링 하위 프레임워크임. 1. 인증이 안 된 사용자들이 출입할 수 있는 /auth/ 경로를 UserController에 추가해 준다. 2. 요청이 들어왔을 때 인증이 필요한지, 필요하지 않은지 구분하는 시큐리티 필터를 등록하는 SecurityConfig 클래스 생성 3. 설정 후 localhost:8080 주소로 접근하면 아래와 같은 화면이 뜨지만 4. 인증없이 접근할 수 있도록 설정해놓은 /auth/ 주소로 접속하면 페이지가 잘 뜨는 것을 확인할 수 있다. 5. 기존에 작성한 loginForm.jsp에서 form태그를 수정한다. 6.SecurityConfig 코드를 아래와 같이 수정하면 위의 f..

지난번에 만든 회원가입에서는 데이터베이스에 비밀번호가 그대로 저장됐다. 이번에는 DB에 비밀번호를 더 안전하게 저장하기 위해 bscrypt 를 이용해 비밀번호를 암호화한 다음 DB에 저장해 보도록 한다. 🤍비밀번호 암호화하여 DB 저장하기 1. bscrypt 설치 npm install bscrypt --save 2. npm 사이트 참고하여 User.js에 코드 작성 user 모델을 저장하기 전에 암호화를 하겠다. 그런데 매번 암호화를 하는 것은 번거로우므로, 비밀번호 변경 시에만 암호화되고 email 변경 시에는 비밀번호 암호화가 반복되지 않도록 조건을 걸어준다. next라는 파라미터를 넣어주고 next 호출 사용자의 비밀번호가 변경되었을 때에만 salt를 생성시켜준다는 문법의 genSalt 사용하여 에..