OAuth 2.0 인증 구현

YouTube Data API은(는) 비공개 사용자 데이터에 대한 액세스 권한을 부여할 OAuth 2.0 프로토콜을 지원합니다. 다음은 몇 가지 주요 OAuth 2.0 개념에 대한 설명입니다.

  • 사용자가 처음으로 Google Account or YouTube account에 로그인해야 하는 애플리케이션 기능을 사용하려고 하면 애플리케이션에서 OAuth 2.0 인증 절차를 시작합니다.

  • 애플리케이션이 사용자를 Google 인증 서버로 안내합니다. 해당 페이지로 연결되는 링크는 애플리케이션에서 사용자 계정에 대해 요청하는 액세스의 scope를 지정합니다. 이 scope를 통해 애플리케이션이 인증된 사용자의 역할을 수행할 때 검색, 삽입, 업데이트, 삭제할 수 있는 리소스가 지정됩니다.

  • 사용자가 이러한 리소스에 대한 애플리케이션의 액세스 권한 부여에 동의하면 Google은 애플리케이션으로 토큰을 반환합니다. 애플리케이션 유형에 따라 토큰을 검증하거나 다른 유형의 토큰으로 교환합니다.

    예를 들어 서버측 웹 애플리케이션은 반환된 토큰을 액세스 토큰 및 갱신 토큰으로 교환합니다. 액세스 토큰을 사용하면 애플리케이션이 사용자를 대신하여 요청을 인증할 수 있고, 갱신 토큰을 사용하면 기존의 액세스 토큰이 만료될 때 애플리케이션이 새 액세스 토큰을 검색할 수 있습니다.

중요: OAuth 2.0 인증을 사용하려면 애플리케이션을 Google에 등록해야 합니다.

OAuth 2.0 흐름

Google API는 다음과 같은 다양한 OAuth 2.0 사용 사례를 지원합니다.

  • 서버측 흐름은 영구적인 정보를 안전하게 저장할 수 있는 웹 애플리케이션을 지원합니다.
  • 클라이언트측 흐름은 브라우저에서 실행 중인 JavaScript 애플리케이션을 지원합니다.
  • 설치된 애플리케이션 흐름은 휴대전화 또는 컴퓨터와 같은 기기에 설치된 애플리케이션을 지원합니다.
  • 기기 흐름은 게임 콘솔 및 비디오 카메라와 같은 제한된 입력 기능을 가진 기기를 지원합니다.
  • 서비스 계정 흐름은 사용자 정보에 액세스하지 않는 서버 간 상호작용을 지원합니다. 단, YouTube Data API은(는) 서비스 계정 흐름을 지원하지 않습니다. 서비스 계정을 YouTube 계정에 연결할 수 있는 방법이 없기 때문에 이 절차로 요청을 인증하려고 시도하면 NoLinkedYouTubeAccount 오류가 생깁니다.