Spring 이메일로 로그인(by Spring Security)

이상원·2022년 6월 14일
0

Spring

목록 보기
1/1

현재 스마트 해상물류 빅데이터 프로젝트 관련 웹사이트 제작을 하고 있음

로그인 기능을 구현하고자 함

Spring Security는 양이 방대하여 공부하고자 하면 거의 한권 분량... 여기서는 필요한 부분만 사용

	@Override
    public UserDetails loadUserByUsername(String email) throws UsernameNotFoundException{
        Optional<SiteUser> _siteUser = this.userRepository.findByemail(email);

        if (_siteUser.isEmpty()) {
            throw new UsernameNotFoundException("사용자 email을 찾을 수 없습니다.");
        }
        SiteUser siteUser = _siteUser.get();
        List<GrantedAuthority> authorities = new ArrayList<>();
        //일단은 모든 최초 가입 사용자는 user로 입장시킨다!
        authorities.add(new SimpleGrantedAuthority(UserRole.USER.getValue()));
        
        return new User(siteUser.getEmail(), siteUser.getPassword(), authorities);
    }

return시 값인 User는 Spring Security로 이용한 것임

인자는 다음과 같으며 따라서 thymeleaf를 통한 html 작성시 이름을 이메일이라고 해도 username으로 해줘야 된다.

참고 문헌
위키 독스 점프 투 스프링
참고 블로그

profile
개발하는 코린이

0개의 댓글