CS

OAuth2 이해하기

ri5 2021. 8. 14. 17:03

OAuth란

유저가 비밀번호나 아이디를 입력하지 않고 다른 웹사이트의 정보로 다른 웹사이트나

어플리케이션의 접근 권한을 부여할 수 있는 즉 웹사이트의 제한된 접근 권한 위임을 다른 웹사이트를 통해 할 수 있도록 만든 프로토콜이다.

 

OAuth2 동작과정

OAuth 동작 과정

  1. client는 resourceServer에 oauth 사용 요청함
  2. resource서버는 clientID와 client secret 정보를 줍니다.
  3. 이를 바탕으로 클라이언트에 client OAuth를 붙이고 나면 사용자가 이를 클릭할 수 있음
  4. resource owner가 클라이언트 접속하면 어떤 정보가 필요하고 승인할지 되묻는다.
  5. 승인 버튼을 누르면 owner는 해당 정보를 제공하는 것을 허락할 것인지 묻는다.
  6. 승인이 완료되면 server는 클라이언트에게 code를 제공
  7. 클라이언트는 code값과 id, secret값을 다시 서버로 보냄
  8. 그럼 서버는 access token을 클라이언트에게 발급함.
  9. 클라이언트는 토큰을 통해 승인된 정보를 접근이 가능하게 됨.

OAuth 특징과 기능

장점: 보안이 철저하게 보장됨

단점: 절차가 복잡함.