메인 콘텐츠로 건너뛰기

PIN 기반 인증

PIN 기반 OAuth 플로우는 3-legged OAuth 프로세스의 한 형태로, 인증 후 사용자를 리디렉션하기 위해 웹 브라우저에 접근하거나 임베드할 수 없는 애플리케이션을 위한 것입니다. 예로는 명령줄 애플리케이션, 임베디드 시스템, 게임 콘솔, 특정 유형의 모바일 앱 등이 있습니다. PIN 기반 OAuth 플로우는 oauth_callbackoob로 설정한 request_token에서 앱에 의해 시작됩니다. oob는 out-of-band OAuth를 의미합니다. 사용자는 여전히 X에 방문해 로그인하거나 앱을 승인하지만, 접근을 승인해도 애플리케이션으로 자동 리디렉션되지 않습니다. 대신 숫자 PIN 코드가 표시되며, 애플리케이션으로 돌아가 해당 값을 입력하라는 안내가 제공됩니다.
Note: PIN 기반 인증을 사용할 때에도 X 앱 설정의 callback_url은 여전히 필요합니다.
 

PIN 기반 OAuth 플로 구현

PIN 기반 플로는 3-legged authorization (및 Sign in with X)과 동일한 방식으로 구현되며, 다음과 같은 차이점이 있습니다:
  1. POST oauth/request_token 호출 시 oauth_callback 값을 oob로 설정해야 합니다.
  2. 사용자가 GET oauth/authenticate 또는 GET oauth/authorize URL를 통해 앱 승인 절차를 위해 X로 이동한 뒤에는 callback_url로 리디렉션되지 않습니다. 대신 X가 생성한 약 7자리 PIN과 해당 PIN을 애플리케이션에 입력하라는 안내가 표시된 화면이 나타납니다.
  3. 사용자가 이 PIN을 애플리케이션에 입력하면, 애플리케이션은 POST oauth/access_token 호출에서 oauth_verifier로 이 PIN을 사용하여 access_token을 획득합니다.
참고: PIN은 재사용할 수 없으며, 획득한 access_token은 애플리케이션-사용자 요청에 사용해야 합니다.