반응형
🤍스프링 시큐리티 소셜 로그인(구글) 구현하기
1. 구글 OAuth 2.0 클라이언트 ID 생성
- 승인된 리디렉션 URI 지정
- 생성된 OAuth 클라이언트 ID 및 비밀번호는 꼭 기억해야 함.
2. build.gradle에 라이브러리 추가
//소셜 로그인 적용
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
3. application.oauth.properties 작성
spring.security.oauth2.client.registration.google.client-id =클라이언트 ID
spring.security.oauth2.client.registration.google.client-secret = 클라이언트 PW
spring.security.oauth2.client.registration.google.scope = email
4. SecurityConfig 클래스에 소셜 로그인이 가능하도록 설정 변경
5. 여기까지 하고 프로젝트를 실행하면 구글 로그인이 추가된 것을 확인할 수 있다.
6. ClubOAuth2UserDetailsService 클래스 작성
- 쉽게 말해서 UserDetailsService의 OAuth 버전임.
- 아래와 같이 데이터베이스에 저장하는 코드를 작성해본다.
7. 로그인 후 데이터베이스에 새로 구글 아이디가 추가되는 것을 확인할 수 있다.
8. Remember me 사용하기
- 스프링 시큐리티의 편리한 기능 중 하나인 '자동 로그인' 기능
- 웹 인증 방식 중 쿠키를 사용하는 방식, 이 기능을 활용하면 한 번 로그인한 사용자가 브라우저를 닫은 후 다시 서비스에 접속해도 별도의 로그인 절차 없이 바로 로그인 처리가 진행됨.
9. Remember me 체크 후 로그인 시 remember-me 라는 이름의 쿠키가 생성되는 것을 확인할 수 있다.
- 소셜 로그인 시에는 remember-me 기능을 사용할 수 없다.
반응형
'💻 my code archive > 🏷️JAVA & Spring(Boot)' 카테고리의 다른 글
[스프링부트 블로그 만들기] 회원 정보 수정 구현하기 (0) | 2022.03.24 |
---|---|
스프링부트 공부기록(32) - API 서비스 만들기 (0) | 2022.03.21 |
스프링부트 공부기록(30) - 스프링 시큐리티(Spring Security) 연동, 인증, 인가, 커스터마이징 (0) | 2022.03.21 |
스프링부트 공부기록(29) - 영화 리뷰 프로젝트 :: 영화 목록 처리, 리뷰 등록, 영화 상세 정보 조회 구현하기 (0) | 2022.03.20 |
스프링부트 공부기록(28) - 영화 리뷰 프로젝트 :: 영화 등록 구현하기 (0) | 2022.03.20 |