개발공부/spring security & JWT 강의
[6강] 구글 로그인 준비
기억지기 개발자
2023. 9. 22. 11:23
1. 해당 사이트에 접속한다.
Google 클라우드 플랫폼
로그인 Google 클라우드 플랫폼으로 이동
accounts.google.com
2. 프로젝트를 하나 생성한다.
3. User Type을 설정한다.
(1단계에서 이메일만 필수적으로 작성해야 해서 작성하고 그 뒤에 적어야 하는 곳들은 모두 skip)
4. 사용자 인증 정보 만들기
여기서 https로 요청했는데 그러면 로컬 프로젝트용으로는 오류가 난다. http로 해야 한다.
-------------------------------------------------------------------------------------------------------------
- 구글 로그인이 완료가 되고 나면 구글의 서버에서 코드를 돌려준다. (인증이 되었다는 코드를)
- 다시 그 코드를 통해서 엑세스 토큰을 (구글에) 요청한다.
- 그 토큰을 받아서 구글 서버에 있는 사용자 정보에 접근할 수 있는 권한을 가지게 된다.
- 여기서 적은 주소(노란 박스에 있는 주소)가 그 코드를 받기 위해 필요한 주소이다.
/login/oauth2/code/ 부분은 고정값이다.
(해당 주소 값은 controller에서 따로 생성할 필요가 없는 알아서 처리되는 주소이다.)
--------------------------------------------------------------------------------------------------------------
생성한 뒤에 build.gradle 파일에 oauth 의존성 주입
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
application.properties 파일에 설정추가
# Google OAuth2 Client 설정
spring.security.oauth2.client.registration.google.client-id= [아까 발급받은 id값]
spring.security.oauth2.client.registration.google.client-secret= [아까 발급받은 비밀번호 값]
spring.security.oauth2.client.registration.google.scope=email,profile
URL 요청 코드 작성하기
// loginForm.html 파일에 해당 코드를 추가
<a href="/oauth2/authorization/google">구글 로그인</a>
위의 코드까지 SecurityConfig 클래스에 작성해 주면 끝~~~