시작에 앞서

본 내용은 "생활코딩 oAuth2.0"을 보고 작성한 내용으로, 이미지와 코드는 해당 강좌에서 포함 된 것입니다.
개발공부를 처음 하기 때문에 단어사용와 의미출처에서 오류가 있을 수 있습니다. 수정사항은 댓글로 부탁드립니다.

지난 글에서

지난 글에서 oAuth를 구성하는 이해관계자에 대해서 다뤄봤습니다.
그 중 잠깐 핵심을 정리하면 다음과 같습니다.

1.

client(우리 서비스)Resource Owner(사용자)를 대신해 로그인 하는데, 이때 필요한 정보를 Resource Server(kakao)에서 얻어 서로 비교해 유효성을 판단합니다

2.
Resource Server는 소셜회사(예: kakao),
Resource Owner는 유저(user),
client(application),
로 비유할 수 있습니다.

이번 글에서

oAuth를 사용하기 위해 첫번째 단계로,
client가 Resouce Server를 이용한다는 승인을 Resouce Server로 부터 받아야 합니다.그것을 등록이라고 합니다.
등록되지 않으면 사용 할 수 없겠죠?

글의 목차

1.등록 하기

2.Resource Server와 client의 상태

1.등록 하기

Resource Server를 보유한 회사(Kakao,google,facebook 등)에 자신의 서비스(application)를 등록해야 합니다.

[카카오 개발자 홈페이지]
Kakao_Developers.png

[구글 개발자 홈페이지]
Google_Developers.png

[페이스북 개발자 홈페이지]
Facebook_for_Developers.png

2.Resource Server와 client의 상태

개발자 페이지의 자신의 서비스 등록이 완료되면, Resource Server와 client는 각각 다음의 정보를 갖게 됩니다.

Resource Server 는

Client ID, Client Secret , Authorized redirect URIs

client 는

Client ID, Client Secret

Client ID, Client Secret , Authorized redirect URIs는 서비스를 등록하면 받게 되는 필수 요소로 특징은 다음과 같습니다.

Client ID

어플리케이션(서비스)을 식별하는 식별자ID를 의미합니다.
다양한 서비스가 존재하는데, Resource Server 입장에서 어떤 서비스 인지 구분하는 ID를 의미합니다.

Client Secret

Client ID에 대한 비밀번호로 외부에 노출되면 안됩니다.
ID의 PASSWORD라고 생각하면 됩니다.

Authorized redirect URIs

Resource Server만 갖는 정보로, client에 권한을 부여하는 과정에서 나중에 Authorized code를 전달하는 통로 입니다.
나중에 client <-> Resource Server 유효성 검사에서 이 redirect URIs도 체크되며 해당주소가 아닐 경우 Resource Server는 해당 client가 아니라고 판단합니다.

마무리

지금까지 oAuth를 하기 위해, Resource Server 회사에 자신의 서비스 등록과 이를 통해 부여받는 필수요소 정보를 설명했습니다.

다음 글에서는 본격적으로 oAuth가 설정되는 과정에 대해서 다루겠습니다.

간략히 말해,
oAuth는 Resource Owner와 Resource Server의 동의를 받아야 실행 가능한 기능입니다.

그 중 Resource Owner에 승인을 받는 것 부터 설명하겠습니다.