Google Cloud 프로젝트

모든 Apps Script 프로젝트는 Google Cloud를 사용하여 승인, 고급 서비스, 기타 세부정보를 관리합니다. 이러한 설정을 구성하고 관리하기 위해 모든 Apps Script 프로젝트에는 연결된 Google Cloud 프로젝트가 있습니다. 스크립트 프로젝트는 Apps Script에서 자동으로 만드는 기본 프로젝트 또는 직접 만드는 표준 프로젝트를 사용할 수 있습니다. 일반적으로 기본 프로젝트는 일상적인 스크립트나 간단한 스크립트에 적합하지만 복잡하거나 상용 품질이거나 게시할 애플리케이션에는 표준 프로젝트를 사용해야 합니다.

언제든지 기본 프로젝트에서 표준 프로젝트로 전환할 수 있지만 기본 프로젝트를 사용하도록 다시 전환할 수는 없습니다. 개발 초기에 스크립트에서 사용할 Cloud 프로젝트를 선택하는 것이 가장 좋습니다. 나중에 전환하면 사용자가 다시 승인해야 하는 등 문제가 발생할 수 있습니다.

기본 Cloud 프로젝트

Apps Script 프로젝트를 만들면 Apps Script에서 백그라운드에서 작동하는 기본 Cloud 프로젝트를 만듭니다.

  • 대부분의 스크립트에서는 이 기본 프로젝트를 보거나 조정할 필요가 없습니다. 앱 스크립트는 Google Cloud와의 필요한 상호작용을 처리합니다. 예를 들어 Apps Script 편집기에서 고급 서비스를 활성화하면 스크립트 프로젝트를 저장할 때 Apps Script가 기본 Cloud 프로젝트에서 고급 서비스를 활성화합니다.
  • 일부 스크립트의 경우 Google Cloud 콘솔과 상호작용해야 합니다. 이 경우 스크립트에서 대신 표준 Cloud 프로젝트를 사용해야 합니다. 예를 들어 Google Cloud 콘솔에서 Google Cloud 로그를 보려면 스크립트에서 표준 프로젝트를 사용해야 합니다.

기본적으로 Cloud 프로젝트에는 기본 프로젝트의 소유자로 작동하는 Google 서비스 계정이라는 항목 하나가 포함된 Identity and Access Management(IAM) 정책이 있습니다. Google 서비스 계정은 appsdev-apps-dev-script-auth@system.gserviceaccount.com입니다.

기본 Cloud 프로젝트 보기 또는 업데이트

대부분의 사용자는 Google Cloud 콘솔에서 기본 프로젝트를 직접 찾거나, 보거나, 수정할 수 없습니다. 관리자인 경우 기본 Google Cloud 프로젝트 보기를 참고하세요.

2019년 4월 8일 이전에 스크립트 프로젝트를 만든 경우 Google Cloud 콘솔에서 액세스할 수 있는 기본 프로젝트를 사용할 수 있습니다. 기본 프로젝트에 액세스하려면 스크립트 프로젝트의 설정으로 이동하여 프로젝트 번호를 클릭합니다.

기본 Cloud 프로젝트 삭제

관리자는 표준 Cloud 프로젝트를 삭제하는 것처럼 기본 Cloud 프로젝트를 삭제할 수 있습니다. Apps Script Cloud 프로젝트 삭제를 참고하세요.

관리자가 아니면 기본 프로젝트를 삭제할 수 없습니다. 하지만 다음과 같은 경우에는 Apps Script에서 기본 프로젝트를 삭제합니다.

  • 스크립트 프로젝트를 삭제하거나 표준 프로젝트를 사용하도록 전환하면 Apps Script는 스크립트에 연결된 기본 프로젝트와 여기에 포함된 모든 설정 또는 정보를 삭제합니다.
  • 스크립트가 180일 이상 실행되지 않으면 Apps Script에서 연결된 기본 프로젝트를 삭제합니다. Apps Script에서 기본 프로젝트를 삭제한 후에 스크립트가 실행되면 Apps Script에서 스크립트용 프로젝트를 만듭니다.

표준 Cloud 프로젝트

프로젝트를 수동으로 구성해야 하는 경우가 아니라면 기본 Cloud 프로젝트가 대부분의 스크립트 프로젝트에 가장 적합한 옵션입니다. 이 경우 스크립트 프로젝트를 전환하여 표준 프로젝트를 사용해야 합니다.

다음 섹션에서는 Apps Script에 표준 프로젝트가 필요한 경우, 이러한 프로젝트의 속성, 이러한 프로젝트로 수행하는 일반적인 작업을 설명합니다. 표준 프로젝트에서만 아래 작업을 실행할 수 있습니다.

Apps Script에 표준 Cloud 프로젝트가 필요한 경우

다음과 같은 경우에는 표준 프로젝트를 사용해야 합니다.

표준 Cloud 프로젝트 속성

표준 프로젝트에는 다음과 같은 속성이 있습니다.

  • Google Cloud 콘솔에서 프로젝트의 모든 Google Cloud 설정에 직접 액세스할 수 있습니다. 이렇게 하면 API를 활성화하고, 승인 사용자 인증 정보를 조정하고, 기타 세부정보를 구성할 수 있습니다.
  • 스크립트 프로젝트를 삭제하거나 다른 표준 프로젝트를 사용하도록 전환해도 원래 표준 프로젝트는 그대로 유지되며 재사용할 수 있습니다.
  • 스크립트 프로젝트에서 고급 서비스를 활성화하면 표준 프로젝트에서 해당 API를 수동으로 활성화해야 합니다.
  • 여러 스크립트 프로젝트와 다른 앱이 동일한 표준 프로젝트를 공유할 수 있습니다. 스크립트 프로젝트를 Google Workspace Marketplace부가기능으로 게시하려면 자체 표준 프로젝트가 있어야 합니다. 게시된 앱은 다른 앱과 클라우드 프로젝트를 공유할 수 없습니다.
  • Apps Script API의 scripts.run 메서드를 사용하여 다른 앱에서 스크립트 프로젝트의 함수를 실행하려면 스크립트 프로젝트와 호출 애플리케이션이 동일한 표준 프로젝트를 공유해야 합니다.
  • Apps Script에서 사용자에게 표준 프로젝트를 사용하는 스크립트를 승인하도록 요청하면 스크립트 프로젝트 이름이 아닌 Cloud 프로젝트 이름이 스크립트를 식별하는 데 사용됩니다. 따라서 적절한 Cloud 프로젝트 이름을 설정해야 합니다.

표준 Cloud 프로젝트에 액세스

스크립트 프로젝트와 연결된 표준 프로젝트에 액세스하려면 다음 단계를 따르세요.

  1. Apps Script 프로젝트를 엽니다.
  2. 왼쪽에서 프로젝트 설정 을 클릭합니다.
  3. Google Cloud Platform (GCP) 프로젝트에서 프로젝트 번호를 클릭합니다.

Google Cloud 콘솔 리소스 관리 페이지에서 직접 표준 프로젝트를 찾을 수도 있습니다.

표준 Cloud 프로젝트에서 API 활성화

Apps Script 애플리케이션은 다른 Google API에 액세스해야 하는 경우가 많습니다. 이렇게 하려면 해당 Cloud 프로젝트에서 API를 활성화해야 합니다. 다음을 실행하여 API를 활성화합니다.

  1. Cloud 프로젝트를 엽니다.
  2. 메뉴 > API 및 서비스를 클릭합니다.
  3. API 및 서비스 사용 설정을 클릭합니다.
  4. 검색창에 활성화할 API를 입력하고 Enter 키를 누릅니다.
  5. 검색 결과에서 API를 클릭한 다음 사용 설정을 클릭하여 이 Cloud 프로젝트의 API를 활성화합니다.

Google API 또는 Google Cloud의 서비스 약관에 동의하라는 메시지가 표시될 수 있습니다. 서비스 약관을 동의하기 전에 신중하게 검토하세요.

애플리케이션에 따라 API 및 서비스 대시보드에서 API를 선택하여 API를 구성해야 할 수도 있습니다.

표준 Cloud 프로젝트의 ID 및 번호 확인

모든 Cloud 프로젝트에는 프로젝트 이름, 프로젝트 ID, 프로젝트 번호가 있습니다. 서비스를 구성하거나 다른 작업을 완료하려면 이러한 식별자가 필요한 경우가 있습니다.

표준 프로젝트의 ID와 번호를 확인하려면 다음 단계를 따르세요.

  1. Cloud 프로젝트를 엽니다.
  2. 오른쪽 상단에서 더보기 > 프로젝트 설정을 클릭합니다.
  3. 표시된 설정 패널에서 프로젝트 이름, 프로젝트 ID, 프로젝트 번호를 확인합니다. 프로젝트 번호는 숫자로만 구성되며 프로젝트 ID는 영숫자로 구성됩니다. 승인 메시지 중에 사용자에게 표시되는 프로젝트 이름을 수정할 수 있습니다.

Google Cloud 콘솔에서 Google Cloud 로그 및 오류 보고서 보기

스크립트 프로젝트에 Google Cloud 로깅 또는 오류 보고를 사용하는 경우 다음을 실행하여 Google Cloud 콘솔에서 이러한 로그와 보고서를 볼 수 있습니다.

  1. Cloud 프로젝트를 엽니다.
  2. 메뉴 를 클릭합니다.
  3. 작업 섹션으로 아래로 스크롤하여 로깅 > 로그 탐색기를 클릭합니다.
  4. 오류 보고서를 보려면 작업 섹션으로 아래로 스크롤하여 오류 보고를 클릭합니다. 오류 보고를 설정하라는 메시지가 표시되면 스크립트 프로젝트에서 아직 예외를 기록하지 않았음을 의미합니다.

OAuth가 필요한 서비스를 사용할 때 Google에서 사용자에게 해당 서비스를 승인하라는 메시지를 표시합니다. OAuth 동의 화면 설정을 사용하면 애플리케이션 이름, 서비스 약관 URL과 같이 Google에서 사용자에게 표시하는 일부 정보를 설정할 수 있습니다.

기본 Cloud 프로젝트는 Apps Script 프로젝트 세부정보에서 자동으로 동의 화면을 만듭니다. 이러한 설정은 조정할 수 없습니다. 표준 클라우드 프로젝트에서는 이 정보를 맞춤설정할 수 있습니다. 다음 단계에 따라 스크립트의 동의 화면을 구성할 수 있습니다.

  1. Cloud 프로젝트를 엽니다.
  2. 메뉴 > API 및 서비스 > 사용자 인증 정보를 클릭합니다.
  3. 동의 화면 구성을 클릭합니다.
  4. 동의 화면 워크플로의 각 섹션을 작성합니다.
  5. 워크플로의 각 단계에서 변경사항을 기록하려면 저장하고 계속을 클릭합니다.

OAuth 사용자 인증 정보 만들기

Apps Script는 일반적으로 스크립트에서 사용하는 서비스에 대해 OAuth를 설정합니다. 일부 애플리케이션의 경우 OAuth 사용자 인증 정보 (클라이언트 ID 및 클라이언트 보안 비밀번호)를 추가로 만들어야 합니다. 이 작업은 표준 프로젝트에서만 할 수 있습니다.

스크립트 프로젝트의 클라이언트 ID와 클라이언트 보안 비밀번호를 만들려면 다음 단계를 따르세요.

  1. Cloud 프로젝트를 엽니다.
  2. 메뉴 > API 및 서비스 > 사용자 인증 정보를 클릭합니다.
  3. 사용자 인증 정보 만들기 > OAuth 클라이언트 ID를 클릭합니다.
  4. 애플리케이션 유형에서 애플리케이션 유형을 선택하고 필요한 경우 표시된 양식을 작성합니다. 완료되면 만들기를 클릭합니다.
  5. 대화상자가 나타나면 JSON 다운로드를 클릭합니다. 이 파일을 사용하여 OAuth를 구성할 수 있습니다.

표준 Cloud 프로젝트에 소유자 추가

표준 프로젝트에 소유자 또는 기타 역할을 추가할 수 있습니다. 프로젝트에서 공동작업하는 경우 팀의 누군가가 항상 스크립트 프로젝트의 Google Cloud 설정에 액세스할 수 있습니다.

다음 단계에 따라 표준 프로젝트에 소유자 또는 기타 역할을 추가할 수 있습니다. 다음을 변경하려면 프로젝트에 대한 수정 권한이 있어야 합니다.

  1. 공동작업자가 누구인지 결정합니다. 기존 Google 그룹을 만들거나 사용하는 것이 좋습니다. 공동작업자 목록에서 도메인을 지정하여 해당 도메인의 모든 사용자를 포함할 수도 있습니다.
  2. 스크립트의 Cloud 프로젝트를 엽니다.
  3. 메뉴 > IAM 및 관리자 > IAM을 클릭합니다.
  4. 상단에서 추가를 클릭합니다.
  5. 화면에 표시된 안내에 따라 Cloud 프로젝트에 하나 이상의 새 구성원과 역할을 추가합니다. 개별 이메일, Google 그룹 또는 도메인을 새 구성원으로 추가할 수 있습니다.
  6. 저장을 클릭합니다.

단일 Cloud 프로젝트로 여러 스크립트 그룹화

여러 Apps Script 프로젝트에서 동일한 표준 Cloud 프로젝트를 공유할 수 있습니다. 이렇게 하려면 표준 프로젝트를 만든 다음 각 스크립트 프로젝트를 전환하여 사용합니다. 기본 프로젝트에서는 이 작업을 할 수 없습니다.

다른 표준 Cloud 프로젝트 사용

다른 표준 Cloud 프로젝트를 사용하도록 스크립트 프로젝트를 전환할 수 있습니다. 스크립트에 Cloud 프로젝트를 수동으로 구성해야 하는 경우 기본 프로젝트에서 표준 프로젝트로 전환해야 합니다. 표준 프로젝트를 사용해야 하는 경우에 관한 자세한 내용은 표준 Cloud 프로젝트를 참고하세요.

다른 표준 Cloud 프로젝트로 전환하는 경우의 효과

스크립트를 기본 프로젝트에서 다른 표준 프로젝트로 전환하면 다음과 같은 효과가 있습니다.

  • 스크립트에 고급 서비스를 활성화한 경우 새 Cloud 프로젝트에서 해당 API를 사용 설정해야 합니다. 이전 Cloud 프로젝트의 고급 서비스에 연결된 모든 데이터가 손실됩니다. Cloud 프로젝트에서 API를 사용 설정하는 방법을 알아보려면 Google Workspace API 사용 설정을 참고하세요.
  • 스크립트에서 내장된 Google Drive 서비스를 사용하는 경우 표준 Cloud 프로젝트에서 Drive API를 사용 설정해야 합니다.

    표준 Cloud 프로젝트에서 Drive API를 사용 설정합니다.

    Drive API 사용 설정

  • 이전에 스크립트를 승인한 모든 사용자는 다시 승인해야 합니다. 대부분의 경우 새 프로젝트와 연결된 앱을 이전에 승인한 모든 사용자도 다시 승인해야 합니다.
  • 스크립트가 Google Workspace Marketplace의 앱 등록정보와 연결된 경우 앱 등록정보, 사용자, 리뷰가 새 프로젝트로 이전되지 않습니다. 새 프로젝트 내에 앱 등록정보를 만들어야 하며 사용자는 앱을 다시 설치해야 합니다. 새 앱 등록정보를 만드는 방법에 관한 자세한 내용은 앱 게시를 참고하세요.
  • 스크립트를 기본 프로젝트로 다시 전환할 수는 없습니다. 표준 프로젝트를 사용하도록 스크립트를 설정하면 Apps Script에서 기본 프로젝트를 삭제합니다.

다른 표준 Cloud 프로젝트로 전환

스크립트의 기존 Cloud 프로젝트를 다른 Cloud 프로젝트로 전환하려면 다음 단계를 따르세요.

  1. 적절한 Cloud 프로젝트가 없는 경우 프로젝트 만들기 안내에 따라 프로젝트를 만듭니다. Google Cloud 콘솔 리소스 관리 페이지에서 쉽게 찾을 수 있도록 기억하기 쉬운 프로젝트 이름을 설정합니다. Apps Script는 사용자에게 스크립트 승인을 요청할 때 이 이름을 사용합니다.
  2. 기존 프로젝트를 사용하려면 Google Cloud 콘솔 리소스 관리 페이지를 열고 사용할 기존 프로젝트를 찾습니다. 프로젝트에 대한 프로젝트 브라우저 및 OAuth 구성 편집기 역할 또는 이에 상응하는 권한이 있는 역할이 있어야 합니다. Apps Script에서 자동으로 생성된 프로젝트는 사용할 수 없습니다.
  3. 클라우드 프로젝트의 프로젝트 번호를 확인합니다.
  4. Cloud 프로젝트를 대체할 스크립트를 엽니다.
  5. 왼쪽에서 프로젝트 설정 을 클릭합니다.
  6. Google Cloud Platform(GCP) 프로젝트에서 프로젝트 변경을 클릭합니다.
  7. 새 프로젝트 번호를 입력하고 프로젝트 설정을 클릭합니다.

클라우드 프로젝트 및 공유 드라이브

공유 드라이브 (이전의 팀 드라이브)는 Drive 사용자 그룹이 Apps Script 프로젝트 및 Drive 문서에서 공동작업할 수 있는 공유 공간을 제공합니다. 공유 드라이브는 팀과 함께 스크립트, 부가기능, 웹 앱을 개발할 때 유용하지만 이전 기본 Cloud 프로젝트로 할 수 있는 작업에 몇 가지 제한사항이 있습니다.

다음 제한사항 목록에서는 Cloud 프로젝트가 공유 드라이브와 상호작용하는 방식을 설명합니다.

  • 스크립트 프로젝트에서 표준 프로젝트를 사용하는 경우 스크립트 프로젝트가 공유 드라이브에 있으면 추가 제한사항이 없습니다.
  • 스크립트 프로젝트가 2019년 4월 8일 이후에 생성된 기본 프로젝트를 사용하는 경우 스크립트 프로젝트가 공유 드라이브에 있는 경우 추가 제한사항이 없습니다.
  • 스크립트 프로젝트에서 2019년 4월 8일 전에 만든 기본 프로젝트를 사용하는 경우 스크립트 프로젝트가 공유 드라이브에 있는 동안 다음과 같은 제한사항이 적용됩니다.
    1. Apps Script UI 또는 Google Cloud 콘솔을 사용하여 기본 프로젝트에 액세스할 수 없습니다. 이 제한으로 인해 프로젝트에 직접 액세스해야 하는 작업을 수행할 수 없습니다.
    2. 고급 서비스를 활성화할 수 없습니다. 고급 서비스를 활성화하려면 표준 프로젝트로 전환하세요.
    3. 기존 Apps Script 프로젝트를 공유 드라이브로 이동하면 Google에서 기본 Cloud 프로젝트에 대한 액세스를 제한합니다. 이전 전에 액세스 권한이 있었던 경우 기본 프로젝트에 계속 액세스할 수 있습니다. 예를 들어 내 드라이브 폴더에서 스크립트를 만든 후 공유 드라이브로 옮겼더라도 스크립트의 Cloud 프로젝트에 계속 액세스할 수 있습니다. 공유 드라이브의 공동작업자는 이 기능을 사용할 수 없습니다.
    4. 스크립트는 공유 드라이브로 이동하기 전의 Cloud 프로젝트 이름을 유지합니다. 공유 드라이브에서 프로젝트 이름을 변경해도 스크립트를 승인하는 사용자에게는 승인 대화상자에 이전 이름이 계속 표시됩니다.

이전 스크립트에 위의 제한사항이 적용되지 않도록 하려면 표준 프로젝트로 전환하세요.

Apps Script Cloud 프로젝트 목록 가져오기

조직의 Apps Script 프로젝트 폴더에 대한 resourcemanager.projects.list 권한이 있는 경우 폴더 내의 모든 표준 및 기본 Apps Script Cloud 프로젝트를 볼 수 있습니다.

  1. Google Cloud 콘솔 리소스 관리 페이지를 엽니다.
  2. Apps Script 폴더 옆에 있는 ID를 복사합니다.
  3. 필터 > 상위 ID를 클릭하고 Apps Script 폴더 ID를 붙여넣습니다.

Apps Script Cloud 프로젝트 삭제

Apps Script Cloud 프로젝트를 삭제하려면 Apps Script Cloud 프로젝트 목록 확인하기의 단계에 따라 삭제하려는 프로젝트를 선택하고 삭제를 클릭합니다.

gcloud를 사용하여 Apps Script 프로젝트를 삭제하려면 다음 명령어를 사용합니다.

gcloud projects list --filter='parent.id=APPS_SCRIPT_FOLDER_ID'
gcloud projects delete PROJECT_ID

Cloud 프로젝트 삭제에 대한 자세한 내용은 프로젝트 종료(삭제)를 참고하세요.