github OAuth

Younghwan Cha·2023년 3월 16일
0

Auth

목록 보기
3/7
post-thumbnail
  1. github 에 app 등록
  2. github 에 로그인하여 code 전달 받음
  3. 전달 받은 code 를 사용하여 access_token 발급

github 에 app 등록

Settings => Developer settings => OAuth Apps 에 등록 진행


github 에 로그인하여 code 수령

GET https://github.com/login/oauth/authorize

client_id

등록시 Github 에서 받은 client ID

redirect_uri

만약 어플리케이션에 등록한 redirect_uri 와 사용자가 전달한 redirect_uri 가 일지하지 않는다면 `redirect uri mismatch` 에러를 던진다.
http://localhost:3000/user/github-login?error=redirect_uri_mismatch
	&error_description=The+redirect_uri+MUST+match+the+registered+callback+URL+for+this+application.
    &error_uri=https%3A%2F%2Fdocs.github.com%2Fapps%2Fmanaging-oauth-apps%2Ftroubleshooting-authorization-request-errors%2F%23redirect-uri-mismatch

아래와 같이 요청을 보내면 github 로그인 화면이 나오게 된다.

https://github.com/login/oauth/authorize?client_id=<client_id>&redirect_uri=<redirect_uri>

로그인 정보를 입력하고 접근 권한과 관련된 승인을 하면 이전에 등록했던 redirect_uri 로 code 가 query parameter 로 전달된다.
전달 받은 code 는 10분 후에 만료된다.

http://localhost:3000/user/github-login?code=<code>

[github OAuth] https://docs.github.com/ko/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps

profile
개발 기록

0개의 댓글