목차
- Spring Security OAuth2 - Handler
- Spring Security OAuth2 - Login 페이지 Customizing 하기
- Spring Security OAuth2를 이용한 로그인 구현 - 사용자 정보 가져오기
- Spring Security OAuth2를 이용한 로그인 구현 - Spring boot OAuth2 인증 살펴보기
- Spring Security OAuth2를 이용한 로그인 구현 - OAuth2를 이용한 인증 사용하기
- Google OAuth2 인증 방식 이해하기
- OAuth2를 이용한 로그인 구현 이해하기
1. OAuth2를 이용한 인증 사용하기
참고
Google에 Web Application 등록하기
Google의 OAuth2 서비스를 이용하기 위해서 사용할 Web Application을 등록해 Client Id와 Client Secret을 받아야 한다.
- 구글 클라우드 플랫폼 : https://console.cloud.google.com/
API및 서비스 > OAuth 동의 화면을 클릭
사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 선택
애플리케이션 유형으로는 웹 애플리케이션을 선택한다.
승인된 리디랙션 URI로는 http://localhost:8080/login/oauth2/code/google 를 기입해준다.
OAuth 클라이언트가 생성됐다는 알림과 함께 Client ID와 Client Secret이 생성된다.
OAuth2 설정 적용하기
SpringBoot에서 Google OAuth2 인증을 사용하기 위해서 Google로부터 생성된 Client ID와 Client Secret을 기입해준다.
application.yml
spring: |
Control 구현
/
경로는 누구나 접근이 가능하도록 해 Hello World 문구가 반환되지만 /restricted
경로는 인증된 사용자만 restricted 문구를 받을 수 있도록 할 것이다.
Oauth2Controller.class
|
Spring Security 설정하기
/
경로는 누구나 접근이 가능하도록 하고 그외 모든 경로는 인증된 사용자만 사용할 수 있도록 설정한다.
HttpSecurity객체의 oauth2Login() 메소드를 사용해 OAuth2 인증방식을 사용하도록 한다.
SecurityConfig.class
|
어플리케이션 실행
설정을 완료한 후 어플리케이션을 실행한 다음 localhost:8080/restricted
로 이동하면 아래와 같은 Google OAuth2인증 페이지로 이동하게 된다.