-
Notifications
You must be signed in to change notification settings - Fork 0
[미니 세미나] OAuth Toss api
Roh HyunUk edited this page Feb 20, 2023
·
2 revisions
Open Authorization의 줄인말로 써드 파티 어플리케이션이 user Resouce에 접근할 수 있도록 하는 Standard Protocol입니다.
해당 프로토콜은 7가지 스탭으로 진행됩니다. - 유저가 OAuth 로그인 버튼을 누르면
- 우리 서버가 Auth Server로 인증요청 전송(이때 application ClientId를 함께 전송함) + 클라이언트 리다이랙트
- 클라이언트가 리다이랙트 당한 Auth Server에 로그인
- 로그인한 클라이언트에 Auth Server는 우리 서버가 요청한 정보 제공을 동의 받음.
- 유저가 허가를 했다면 Auth Server는 AccessToken을 우리 서버에게 전송.
- 해당 AccessToken을 활용해 유저의 정보를 우리 서버가 Auth Server로 요청
- AccessToken 검증이후 Auth Server가 유저의 정보를 우리 서버에 제공.
- 해당 AccessToken expire될때까지 계속 사용가능.
client = C
Toss = T
Server = S
- C --> T 에서 어떤 항목을 얼마에 살지 결재 정보를 넘겨 주어야 합니다. 해당 request 에 관한 응답으로
- C <-- T 형태로 리다이렉트를 보냅니다
- C --> S Get 에서 orderId (Customer) , private Key (Toss) 를 보냅니다.
- S --> T 로 IsValid? 를 판단합니다.
- T --> S 로 성공 응답을 보냅니다.
- S --> C 로 리다이렉트를 보냅니다 ( 결재 셩공 )
- C --> S failed 를 전송합니다.
- S --> C 로 실패했을 경우의 url 로 리다이렉트를 보냅니다. ( 결재 실패 )