Video Intelligence API 인증

이 페이지에서는 서비스 계정이 무엇인지 설명하고, Video Intelligence API에 대한 요청을 인증하기 위해 서비스 계정을 만드는 방법과 서비스 계정을 사용해서 애플리케이션 기본 사용자 인증 정보를 설정하는 방법을 알아봅니다.

애플리케이션 코드가 Video Intelligence API를 사용할 수 있도록 하려면 애플리케이션이 서비스에 대해 해당 ID를 인증하고 작업 수행을 위한 승인을 얻을 수 있도록 적절한 사용자 인증 정보를 설정해야 합니다. 이러한 사용자 인증 정보 관련 메커니즘을 인증 스키마라고 합니다.

Google Cloud API 인증 및 승인(일반적으로 모두 합해서 '인증'이라고 부름)은 일반적으로 서비스 계정을 사용해서 수행됩니다. 서비스 계정을 사용하면 코드가 애플리케이션 사용자 인증 정보를 Video Intelligence API로 직접 전송할 수 있습니다. 사용자 계정과 같은 서비스 계정은 이메일 주소로 표시됩니다. 사용자 계정과 달리, 서비스 계정은 애플리케이션에만 연결됩니다.

API 사용 설정

인증을 수행할 수 있으려면 먼저 Video Intelligence API를 사용 설정해야 합니다.

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Cloud Video Intelligence API 사용 설정

    API 사용 설정

  5. 서비스 계정을 만듭니다.

    1. Google Cloud Console에서 서비스 계정 만들기 페이지로 이동합니다.

      서비스 계정 만들기로 이동
    2. 프로젝트를 선택합니다.
    3. 서비스 계정 이름 필드에 이름을 입력합니다. Google Cloud 콘솔은 이 이름을 기반으로 서비스 계정 ID 필드를 채웁니다.

      서비스 계정 설명 필드에 설명을 입력합니다. 예를 들면 Service account for quickstart입니다.

    4. 만들고 계속하기를 클릭합니다.
    5. 완료를 클릭하여 서비스 계정 만들기를 마칩니다.

      브라우저 창을 닫지 마세요. 다음 단계에서 사용합니다.

  6. 서비스 계정 키 만들기

    1. Google Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.
    2. 를 클릭합니다.
    3. 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.
    4. 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.
    5. 닫기를 클릭합니다.
  7. GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 사용자 인증 정보가 포함된 JSON 파일의 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로 새 세션을 열면 변수를 다시 설정합니다.

  8. Google Cloud CLI를 설치합니다.
  9. gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.

    gcloud init
  10. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  11. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  12. Cloud Video Intelligence API 사용 설정

    API 사용 설정

  13. 서비스 계정을 만듭니다.

    1. Google Cloud Console에서 서비스 계정 만들기 페이지로 이동합니다.

      서비스 계정 만들기로 이동
    2. 프로젝트를 선택합니다.
    3. 서비스 계정 이름 필드에 이름을 입력합니다. Google Cloud 콘솔은 이 이름을 기반으로 서비스 계정 ID 필드를 채웁니다.

      서비스 계정 설명 필드에 설명을 입력합니다. 예를 들면 Service account for quickstart입니다.

    4. 만들고 계속하기를 클릭합니다.
    5. 완료를 클릭하여 서비스 계정 만들기를 마칩니다.

      브라우저 창을 닫지 마세요. 다음 단계에서 사용합니다.

  14. 서비스 계정 키 만들기

    1. Google Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.
    2. 를 클릭합니다.
    3. 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.
    4. 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.
    5. 닫기를 클릭합니다.
  15. GOOGLE_APPLICATION_CREDENTIALS 환경 변수를 사용자 인증 정보가 포함된 JSON 파일의 경로로 설정합니다. 이 변수는 현재 셸 세션에만 적용되므로 새 세션을 열면 변수를 다시 설정합니다.

  16. Google Cloud CLI를 설치합니다.
  17. gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.

    gcloud init

Google Cloud 콘솔에서 서비스 계정 만들기

Google Cloud 콘솔을 사용하여 서비스 계정을 만들려면 다음을 수행하세요.

  1. Google Cloud 콘솔 사용자 인증 정보 페이지에서 사용자 인증 정보 만들기 > 서비스 계정 키를 선택합니다.

  2. 그런 다음 서비스 계정에서 새 서비스 계정을 선택합니다.

  3. 서비스 계정 이름 상자에 서비스 계정의 이름을 입력합니다. 이 이름은 서비스 계정 ID의 기본 이름으로 사용됩니다(생성된 서비스 계정 ID 주소에서 '@' 왼쪽). 하지만 이 서비스 계정 ID 이름을 변경할 수 있습니다. 이러한 이름은 임의로 지정할 수 있으며, 기억할 수만 있으면 됩니다.

  4. 키 유형 아래에서 대부분의 새 프로젝트에 대해 JSON을 선택합니다.

  5. 만들기를 클릭합니다.

그런 후 Google Cloud 콘솔이 JSON 키(.json 텍스트 파일)를 만들고, 파일을 컴퓨터로 다운로드하라는 메시지를 표시하고, 서비스 계정 생성됨 대화상자를 표시합니다.

생성된 JSON 키는 다음과 같은 샘플 JSON 키와 유사합니다.

{
  "type": "service_account",
  "project_id": "PROJECT_ID",
  "private_key_id": "SOME_NUMBER",
  "private_key": "-----BEGIN PRIVATE KEY-----\nPRIVATE_KEY\n-----END PRIVATE KEY-----\n",
  "client_email": "SERVICE_ACCOUNT_EMAIL",
  "client_id": "...",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://accounts.google.com/o/oauth2/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/SERVICE_ACCOUNT_EMAIL"
}

이 JSON 파일은 비공개 키를 포함하고 있으며, 이 파일이 유일한 사본이므로 안전하게 보관하세요. 주석 요청을 Video Intelligence API로 전송할 때 코드 내에서 이 서비스 계정 키 파일을 참조해야 합니다.

애플리케이션 기본 사용자 인증 정보로 인증

애플리케이션이 Video Intelligence API에 인증을 수행하는 가장 간단한 방법은 애플리케이션 기본 사용자 인증 정보(ADC)를 사용하는 것입니다. ADC를 사용하는 서비스는 먼저 환경 변수 GOOGLE_APPLICATION_CREDENTIALS 내에서 사용자 인증 정보를 검색합니다. 다른 사용자 인증 정보(예: 사용자 인증 정보)를 사용하기 위해 특별히 ADC가 필요하지 않다면, 서비스 계정 키 파일(서비스 계정 키를 만들었을 때 다운로드된 .json 파일)을 가리키도록 이 환경 변수를 설정해야 합니다.

$ export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_ACCOUNT_FILE