UserDetails
-
Delivery Together - JWT 인증방식의 로그인(2)Projects/Problem & Solution 2021. 12. 24. 15:16
사용자 정보 생성 User 클래스 생성 @Data public class User implements UserDetails { private String username; // 사용자 계정 private String birthdate; // 사용자 생일 private String country; // 사용자 국적 private String gender; // 사용자 성별 private String password; // 사용자 비밀번호 private String role; // 사용자 권한 @Override public Collection
-
Spring Security - 구글 로그인 및 자동 회원가입Framework & Library/Spring Security 2021. 10. 4. 15:00
UserDetails, OAuth2User 타입의 통합 PrincipalDetails 클래스 수정 ㆍ 로그인 사용자의 정보와 OAuth 로그인 사용자의 정보를 받는 타입이 UserDetails, OAuth2User로 서로 다르기 때문에 구현하는데 불편함이 있었다. ㆍ 이러한 불편함을 없애기 위해 두 개의 타입을 처리할 수 있는 클래스가 필요하다. ㆍ 위 사진과 같이 기존의 PrincipalDetails 클래스에 OAuth2User 인터페이스를 추가로 구현한다. ㆍ OAuth 로그인 사용자의 정보를 받기 위해 Map 타입의 변수인 attributes를 선언하고, 생성자를 추가한다. ㆍ OAuth2User 인터페이스를 구현하고 getAttributes() 메서드와 getName() 메서드 위 사진과 같이 오..
-
Spring Security - 로그인Framework & Library/Spring Security 2021. 10. 1. 15:06
로그인 설정 SecurityConfig 클래스 수정 @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); http.authorizeRequests() .antMatchers("/user/**").authenticated() // 인증 필요 .antMatchers("/manager/**").access("hasRole('ROLE_ADMIN') or hasRole('ROLE_MANAGER')") // ROLE_ADMIN, ROLE_MANAGER 권한 필요 .antMatchers("/admin/**").access("hasRole('ROLE_ADMIN')") // ROLE_ADMIN 권한 필요..