Google Cloud 프로젝트

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

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

기본 Cloud 프로젝트

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

  • 대부분의 스크립트에서 이 기본 프로젝트를 확인하거나 조정할 필요가 없습니다. Apps Script는 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입니다.

기본 클라우드 프로젝트 보기 또는 업데이트

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

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

기본 Cloud 프로젝트 삭제

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

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

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

표준 클라우드 프로젝트

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

다음 섹션에서는 Apps Script에서 언제 표준 프로젝트를 필요로 하는지, 이러한 프로젝트의 속성이 무엇인지, 그리고 그와 함께 수행되는 일반적인 작업을 설명합니다. 아래 작업은 표준 프로젝트에서만 수행할 수 있습니다.

Apps Script에 표준 클라우드 프로젝트가 필요한 경우

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

표준 클라우드 프로젝트 속성

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

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

표준 Cloud 프로젝트에 액세스

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

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

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

표준 클라우드 프로젝트에서 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를 선택하여 구성해야 할 수도 있습니다.

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

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

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

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

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

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

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

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

기본 클라우드 프로젝트는 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를 구성할 수 있습니다.

표준 클라우드 프로젝트에 소유자 추가

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

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

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

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

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

다른 표준 Cloud 프로젝트 사용

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

다른 표준 클라우드 프로젝트로 전환했을 때의 영향

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

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

다른 표준 클라우드 프로젝트로 전환

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

  1. 적합한 Cloud 프로젝트가 없는 경우 프로젝트 만들기 안내에 따라 프로젝트를 만듭니다. Google Cloud Console 리소스 관리 페이지에서 찾을 수 있도록 기억하기 쉬운 프로젝트 이름을 설정합니다. Apps Script에서는 사용자에게 스크립트 승인을 요청할 때 이 이름을 사용합니다.
  2. 기존 프로젝트를 사용하려면 Google Cloud 콘솔 리소스 관리 페이지를 열고 사용할 기존 프로젝트를 찾습니다. 프로젝트에 대한 프로젝트 브라우저 및 OAuth 구성 편집자 역할 또는 이에 상응하는 권한이 있는 역할이 있어야 합니다. Apps Script에서 자동으로 생성된 프로젝트는 사용할 수 없습니다.
  3. Cloud 프로젝트의 프로젝트 번호를 결정합니다.
  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 Console을 사용하여 기본 프로젝트에 액세스할 수 없습니다. 이러한 제한으로 인해 프로젝트에 직접 액세스해야 하는 작업은 실행할 수 없습니다.
    2. 고급 서비스를 활성화할 수 없습니다. 고급 서비스를 활성화하려면 표준 프로젝트로 전환하세요.
    3. 기존 Apps Script 프로젝트를 공유 드라이브로 이동하면 Google에서 기본 Cloud 프로젝트에 대한 액세스를 제한합니다. 이동 전에 액세스 권한이 있으면 기본 프로젝트에 계속 액세스할 수 있습니다. 예를 들어 내 드라이브 폴더에서 스크립트를 만들고 공유 드라이브로 이동한 경우에도 스크립트의 클라우드 프로젝트에 액세스할 수 있습니다. 공유 드라이브의 공동작업자가 액세스하지 못할 수도 있습니다.
    4. 스크립트는 공유 드라이브로 이동하기 전에 Cloud 프로젝트 이름을 유지합니다. 공유 드라이브에서 프로젝트 이름을 변경하더라도 스크립트를 승인하는 사용자는 승인 대화상자에 이전 이름이 계속 표시됩니다.

이전 스크립트에 대해 위와 같은 제한사항을 방지하려면 표준 프로젝트로 전환하세요.

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

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

  1. Google Cloud Console 리소스 관리 페이지를 엽니다.
  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 프로젝트 삭제에 대한 자세한 내용은 프로젝트 종료(삭제)를 참조하세요.