728x90
OAuth 2.0
애플리케이션에서 사용자의 인증을 직접 처리하지 않고
신뢰할 수 있는 써드 파티 애플리케이션이 대신 처리하게 한 후에
해당 써드 파티 애플리케이션의 서비스까지 사용할 수 있는 방식이다.
간단하게 말하자면 요새 자주 사용되는
구글/카카오/네이버 등을 이용한 로그인 방식이다.
기존 서버에서 인증을 하고 외부 애플리케이션의 서비스를 이용하려면
외부 애플리케이션에서도 인증을 받아야 해서
두 번의 인증 과정이 필요하지만
이 방식을 사용하면 한 번의 인증만으로도 가능해진다.
인증 방식
OAuth 2.0를 사용하지 않는 기존의 로그인 방식은
클라이언트 요청 → 웹 서버 인증 → 외부 애플리케이션 서버 인증 순서로 진행되었다면
OAuth 2.0를 사용하게 되면
클라이언트 요청 → 웹 서버가 써드 파티 애플리케이션이 인증 위임 순서로 진행된다.
자세하게 적어보자면 아래와 같다.
- 클라이언트의 인증 요청
- 웹 서버가 써드 파티 애플리케이션에 인증 위임
- 써드 파티 애플리케이션이 인증 처리 후 성공하면 액세스 토큰 전달
- 웹 서버가 액세스 토큰을 사용하여 외부 애플리케이션의 API 사용
사용 유형
써드 파티 애플리케이션의 API를 직접적으로 사용하는 경우처럼
캘린더나 지도 등의 외부 API를 사용하는 애플리케이션을 이용할 때 사용된다.
사용자의 크리덴셜 정보를 남기고 싶지 않은 경우에도
OAuth 2.0을 사용하여 추가적인 인증 서비스를 사용할 수 있다.
'Back-End > Security' 카테고리의 다른 글
[스프링 시큐리티] 공식문서로 배워보기 : 의존성 추가 (0) | 2023.08.11 |
---|---|
OAuth 2.0 동작 방식 (0) | 2023.07.17 |
[스프링 시큐리티] 스프링 시큐리티 구조 분석 - 1 (0) | 2023.07.16 |
JWT (0) | 2023.07.12 |
토큰 기반 자격 증명 (0) | 2023.07.11 |