Spring Security (4) 회원 가입

castle·2023년 12월 27일
0

회원가입


로그인 시 회원 정보를 통해 인증, 인가 작업을 진행하기 위해 사용자로 부터 회원가입을 진행한 후 DB에 회원 정보를 저장한다.

회원가입 로직


  1. 회원가입 요청을 Controller가 받는다.
  2. 회원가입 로직 Service를 호출한다.
    • DB에 이미 동일한 회원이 존재하는지 검증한다.(existBy)
  3. DTO의 유저 데이터를 엔티티에 매핑한다.
    • 비밀번호는 bCryptPasswordEncoder가 제공하는 encode메서드를 이용해서 암호화해서 매핑한다
  4. 레포지토리의 save를 이용해 저장한다.

SecurityConfig class 설정 부분에 permitAll() 부분에 회원가입 요청도 추가해주어 로그인하지 않은 사용자도 접근을 허용해 주어야 한다.

회원 중복 검증, 처리 로직


중복 가입이 발생하는 상황을 방지하기 위해 백엔드단에서 반드시 중복을 검증하고 처리하는 로직을 작성해야한다.

중복 예방

@Column(unique = true)를 이용해 해당 값이 유일할 수 있도록 설정하기.

중복 검증

JPA의 existsBy~ 를 커스텀해서 사용하기

  • 존재하는지 boolean 값 으로 retrun된다.

프론트에서 중복 검증

httpXMLRequest를 통해 백엔드에 구현해둔 API에 이미 존재하는지 검증하는 로직이 필요하다.

가입 관련 문자 정규식 처리

  • 아이디 자리 수
  • 아이디의 특수문자 포함 여부
  • admin과 같은 아이디 사용 불가
  • 비밀번호 자리 수
  • 비밀 번호 특수문자 포함 여부

0개의 댓글

관련 채용 정보