본문 바로가기
생각 정리

2022. 11. 25.

by jaeyoungb 2022. 11. 25.

§ 학습 전(계획) §

▶ 학습 목표는 무엇인가?

  • OAuth 2
OAuth 2이란?
OAuth 2의 동작 방식
OAuth 2 인증을 위한 사전 작업

 

 이미 알고 있는 내용은 무엇인가?

OAuth 2에 관해서는 처음 학습하는 내용들이다.

 

 


 

§ 학습 후(점검 및 평가)

 새롭게 배운 내용은 무엇인가?

  • OAuth 2는 사용자 정보를 보유하고 있는 신뢰할 만한 써드 파티 애플리케이션(GitHub, Google, Facebook 등)에서 사용자의 인증을 대신 처리해 주고 접근 권한에 대한 토큰을 발급한 뒤 해당 토큰을 이용해 써드 파티 애플리케이션의 서비스를 사용하게 해주는 방식
  • OAuth 2를 사용하는 애플리케이션 유형
    • 써드 파티 애플리케이션에서 제공하는 API를 직접적으로 사용
    • 추가적인 인증 서비스를 제공하기 위한 용도
  • OAuth 2 인증 컴포넌트
    • Resource Owner는 사용하고자 하는 Resource의 소유자를 의미
    • Client는 Resource Owner를 대신해 보호된 Resource에 액세스하는 애플리케이션을 의미
    • Resource Server는 Client의 요청을 수락하고 Resource Owner에 해당하는 Resource를 제공하는 서버를 의미
    • Authorization Server는 Client가 Resource Server에 접근할 수 있는 권한을 부여하는 서버를 의미
  • OAuth 2 인증 프로토콜의 키포인트는 Client 애플리케이션이 Resource Owner의 대리인 역할을 수행한다는 것
  • Authorization Grant에 따른 인증 처리 방식
    • Authorization Code Grant : 권한 부여 승인 코드 방식
    • Implicit Grant : 암묵적 승인 방식
    • Resource Owner Password Credential Grant : 자원 소유자 자격 증명 승인 방식
    • Client Credentials Grant : 클라이언트 자격 증명 승인 방식
  • 구글의 OAuth 2 인증 시스템을 사용하기 위해서는 구글 API 콘솔에서 OAuth 클라이언트를 생성해야 함
  • 생성된 OAuth 클라이언트의 클라이언트 ID와 클라이언트 보안 비밀번호(Secret)는 Spring Security 기반의 애플리케이션의 설정 정보로 사용되므로 유출되지 않도록 안전하게 잘 보관
 

 다른 사람에게 설명할 수 있는가?

왜 OAuth 2를 사용하고, 어떤 인증 처리 흐름을 갖는지 설명할 수 있다.

 

 아직 이해되지 않은 내용은 무엇인가?

Authorization Grant에 따른 인증 처리 방식이 4가지가 있는데, 각각의 방식에 대해 좀 더 알아둘 필요가 있고, 어떻게 코드로 구현해서 사용할 수 있는지 학습이 필요해보인다.

 

 이해되지 않은 내용을 보완하기 위해서 나는 무엇을 할 수 있는가?

해당 내용을 복습하고, 관련 공식 문서를 찾아 공부할 수 있을 것 같다.

추후에 OAuth 2 적용하기 위해 코드로 구현하는 학습을 가질 때, 집중해서 임하면 좋을 것  같다.

 

 오늘 나의 학습 만족도는 어느 별 5개 중 몇 개를 줄 수 있는가?

  • ★★★★★

오늘 두통이 사라지고, 처음으로 운동을 다녀왔다.

기분은 좋았지만, 몸 컨디션이 저조한 걸 확실히 체감했다.

이후에 시간 가는 줄 모르고 학습에 임했던 것 같다.

꽤나 집중한 하루여서, 만족스럽다.

주말에도 바쁘게 보내야될 것 같은데, 컨디션 조절 잘하면서 힘내보자!

'생각 정리' 카테고리의 다른 글

2022. 11. 29.  (0) 2022.11.29
2022. 11. 28.  (0) 2022.11.28
2022. 11. 24.  (0) 2022.11.24
2022. 11. 23.  (1) 2022.11.23
2022. 11. 22.  (0) 2022.11.22