Облачные проекты Google

Каждый проект Apps Script использует Google Cloud для управления авторизацией, расширенными услугами и другими деталями. Для настройки этих параметров и управления ими каждый проект Apps Script имеет связанный проект Google Cloud . В вашем проекте скрипта может использоваться проект по умолчанию , который Apps Script создает автоматически, или стандартный проект , который вы создаете самостоятельно. В общем, проекты по умолчанию хороши для повседневных или простых сценариев, но вам следует использовать стандартный проект для любого сложного приложения коммерческого качества или приложения, которое вы собираетесь опубликовать.

Вы можете переключиться с проекта по умолчанию на стандартный проект в любое время, но не можете вернуться к использованию проекта по умолчанию. Лучше всего выбрать облачный проект, который использует ваш скрипт, на ранних стадиях разработки. Более позднее переключение может вызвать осложнения, например потребовать от пользователей повторной авторизации.

Облачные проекты по умолчанию

Когда вы создаете проект Apps Script, Apps Script создает облачный проект по умолчанию, который работает в фоновом режиме.

  • Для большинства сценариев вам никогда не потребуется просматривать или настраивать этот проект по умолчанию. Apps Script обрабатывает необходимые взаимодействия с Google Cloud. Например, если вы активируете расширенную службу в редакторе Apps Script, Apps Script активирует расширенную службу в облачном проекте по умолчанию при сохранении проекта сценария.
  • Для некоторых сценариев вам необходимо взаимодействовать с консолью Google Cloud. В этих случаях ваш сценарий должен использовать стандартный облачный проект. Например, для просмотра журналов Google Cloud в консоли Google Cloud ваш скрипт должен использовать стандартный проект.

По умолчанию облачные проекты имеют политику управления идентификацией и доступом (IAM) с одной записью — учетной записью службы Google, которая выступает в качестве владельца проекта по умолчанию. Учетная запись службы Google — appsdev-apps-dev-script-auth@system.gserviceaccount.com .

Просмотр или обновление облачных проектов по умолчанию

Большинство пользователей не могут напрямую находить, просматривать или редактировать проекты по умолчанию в консоли Google Cloud. Если вы администратор, см. раздел Просмотр проектов Google Cloud по умолчанию .

Если вы создали проект сценария до 8 апреля 2019 года , вы можете использовать проект по умолчанию, доступ к которому можно получить в консоли Google Cloud. Чтобы получить доступ к проекту по умолчанию, перейдите к настройкам проекта сценария и щелкните номер проекта.

Удалить облачные проекты по умолчанию

Если вы администратор, вы можете удалять проекты Cloud по умолчанию, как и стандартные проекты Cloud. См. раздел Удаление проектов Apps Script Cloud .

Если вы не администратор, вы не можете удалять проекты по умолчанию. Однако Apps Script удаляет проекты по умолчанию в следующих сценариях:

  • Если вы удалите проект сценария или переключите его на использование стандартного проекта, Apps Script удалит проект по умолчанию, прикрепленный к сценарию, вместе со всеми настройками или информацией, которые он содержит.
  • Если скрипт не запускается в течение 180 или более дней, Apps Script удаляет связанный с ним проект по умолчанию. Если сценарий запускается после того, как Apps Script удаляет проект по умолчанию, Apps Script создает его для сценария.

Стандартные облачные проекты

Облачные проекты по умолчанию — лучший вариант для большинства проектов сценариев, если только вам не нужно настраивать проект вручную. В таких ситуациях вам необходимо переключить проект сценария на использование стандартного проекта .

В следующих разделах описывается, когда Apps Script требуется стандартный проект, свойства таких проектов и типичные задачи, выполняемые с их помощью. Вы можете выполнять указанные ниже задачи только со стандартными проектами.

Когда Apps Script требует стандартных облачных проектов

Стандартный проект необходимо использовать в следующих ситуациях:

Стандартные свойства облачного проекта

Стандартные проекты обладают следующими свойствами:

  • Вы можете получить доступ ко всем настройкам Google Cloud для проекта непосредственно из консоли Google Cloud . Это позволяет активировать API, настраивать учетные данные авторизации и настраивать другие детали.
  • При удалении проекта сценария или переключении его на использование другого стандартного проекта исходный стандартный проект остается, и его можно использовать повторно.
  • При активации расширенной службы в проекте скрипта необходимо вручную активировать соответствующий API в стандартном проекте.
  • Несколько проектов сценариев и другие приложения могут использовать один и тот же стандартный проект. Если вы собираетесь опубликовать проект сценария в Google Workspace Marketplace в качестве дополнения , у него должен быть собственный стандартный проект. Опубликованные приложения не могут совместно использовать облачные проекты с другими приложениями.
  • Если вы хотите выполнять функции в проекте скрипта из другого приложения с помощью метода scripts.run Apps Script API , проект скрипта и вызывающее приложение должны использовать один и тот же стандартный проект.
  • Когда Apps Script запрашивает у пользователя авторизацию сценария, использующего стандартный проект, для идентификации сценария используется имя облачного проекта (а не имя проекта сценария). По этой причине обязательно установите подходящее имя облачного проекта.

Доступ к стандартному облачному проекту

Чтобы получить доступ к стандартному проекту, связанному с вашим проектом сценария, выполните следующие действия:

  1. Откройте проект Apps Script.
  2. Слева нажмите параметров проекта .
  3. В разделе «Проект Google Cloud Platform (GCP)» нажмите номер проекта.

Вы также можете найти стандартный проект непосредственно на странице «Управление ресурсами» консоли Google Cloud .

Активируйте API в стандартном облачном проекте

Часто приложению Apps Script требуется доступ к другому API Google. Для этого необходимо активировать API в соответствующем облачном проекте. Активируйте API, выполнив следующие действия:

  1. Откройте облачный проект .
  2. Нажмите > API и службы .
  3. Нажмите «Включить API и службы» .
  4. В поле поиска введите API, который вы хотите активировать, и нажмите Enter .
  5. Нажмите API в результатах поиска, а затем нажмите «Включить» , чтобы активировать API для этого облачного проекта.

Вам может быть предложено принять Условия использования Google API или Google Cloud . Внимательно ознакомьтесь с Условиями обслуживания, прежде чем принять их.

В зависимости от приложения вам также может потребоваться настроить API, выбрав его на панели мониторинга API и сервисов .

Определите идентификатор и номер стандартного облачного проекта

Все облачные проекты имеют имя, идентификатор и номер проекта. Иногда эти идентификаторы необходимы для настройки служб или выполнения других задач.

Чтобы определить идентификатор и номер вашего стандартного проекта, выполните следующие действия:

  1. Откройте облачный проект .
  2. В правом верхнем углу нажмите Еще > Настройки проекта .
  3. Просмотрите имя проекта , идентификатор проекта и номер проекта на появившейся панели настроек . Номер проекта состоит только из цифр, а идентификатор проекта — буквенно-цифровой. Вы можете редактировать имя проекта , которое отображается пользователям во время запросов на авторизацию.

Просматривайте журналы Google Cloud и отчеты об ошибках в консоли Google Cloud.

Если вы используете ведение журнала Google Cloud или отчеты об ошибках для своего проекта скрипта, вы можете просмотреть эти журналы и отчеты в консоли Google Cloud , выполнив следующие действия:

  1. Откройте облачный проект .
  2. Нажмите Меню .
  3. Прокрутите вниз до раздела «Операции» и нажмите «Ведение журнала» > «Проводник журналов» .
  4. Чтобы просмотреть отчеты об ошибках, прокрутите вниз до раздела «Операции» и нажмите «Отчеты об ошибках ». Если вам будет предложено настроить отчеты об ошибках, это означает, что ваш проект скрипта еще не зарегистрировал никаких исключений.

При использовании сервисов, требующих OAuth, Google предлагает пользователям авторизовать эти сервисы. Настройки экрана согласия OAuth позволяют вам указать некоторую информацию, которую Google предоставляет пользователям, например имя приложения и URL-адрес условий обслуживания.

Проекты Cloud по умолчанию автоматически создают экран согласия на основе сведений о проекте Apps Script; вы не можете изменить эти настройки. Стандартные облачные проекты позволяют настраивать эту информацию. Вы можете настроить экран согласия вашего скрипта, выполнив следующие действия:

  1. Откройте облачный проект .
  2. Нажмите > API и службы > Учетные данные .
  3. Нажмите «Настроить экран согласия» .
  4. Заполните каждый раздел рабочего процесса экрана согласия.
  5. Чтобы записывать изменения на каждом этапе рабочего процесса, нажмите «Сохранить и продолжить» .

Создайте учетные данные OAuth

Apps Script обычно настраивает OAuth для сервисов, которые использует ваш скрипт. Для некоторых приложений необходимо создать дополнительные учетные данные OAuth (идентификаторы клиентов и секреты клиентов). Это можно сделать только со стандартными проектами.

Чтобы создать идентификатор клиента и секрет клиента для проекта сценария, выполните следующие действия:

  1. Откройте облачный проект .
  2. Нажмите > API и службы > Учетные данные .
  3. Нажмите Создать учетные данные > Идентификатор клиента OAuth .
  4. В разделе «Тип приложения» выберите тип вашего приложения и при необходимости заполните появившуюся форму. По завершении нажмите «Создать» .
  5. В появившемся диалоговом окне нажмите «Загрузить JSON» . Вы можете использовать этот файл для настройки OAuth.

Добавление дополнительных владельцев в стандартный облачный проект

В стандартный проект можно добавить дополнительных владельцев или другие роли. Если вы работаете над проектом, это помогает гарантировать, что кто-то из вашей команды всегда будет иметь доступ к настройкам Google Cloud проекта сценария.

Вы можете добавить дополнительных владельцев или другие роли в стандартный проект, выполнив следующие действия. Чтобы внести любое из этих изменений, у вас должны быть права на редактирование проекта:

  1. Определите, кем должны быть ваши сотрудники. Мы рекомендуем вам создать или использовать существующую группу Google. Вы также можете указать домены в списке соавторов, чтобы включить всех пользователей в этом домене.
  2. Откройте облачный проект скрипта .
  3. Нажмите > IAM и администратор > IAM .
  4. Вверху нажмите «Добавить» .
  5. Следуйте инструкциям на экране, чтобы добавить в облачный проект одного или нескольких новых участников и их роли. Вы можете добавлять отдельные адреса электронной почты, группы Google или домены в качестве новых участников.
  6. Нажмите Сохранить .

Группируйте несколько сценариев в один облачный проект.

Вы можете использовать несколько проектов Apps Script в одном стандартном облачном проекте. Для этого создайте стандартный проект, а затем переключите каждый проект сценария на его использование. Вы не можете сделать это с проектами по умолчанию.

Используйте другой стандартный облачный проект.

Вы можете переключить проект сценария, чтобы он использовал другой стандартный проект Cloud. Если ваш скрипт требует ручной настройки облачного проекта, вам необходимо переключиться с проекта по умолчанию на стандартный проект. Чтобы узнать больше о том, когда вам нужно использовать стандартный проект, обратитесь к стандартным облачным проектам .

Последствия перехода на другой стандартный облачный проект

Если вы переключите свой сценарий из проекта по умолчанию или в другой стандартный проект, это приведет к следующим последствиям:

  • Если вы активировали расширенные сервисы для своего скрипта, вам необходимо включить соответствующие API в новом облачном проекте. Вы потеряете все данные, связанные с расширенными услугами в предыдущем облачном проекте. Чтобы узнать, как включить API в вашем облачном проекте, см. статью Включение API Google Workspace .
  • Если ваш скрипт использует встроенный сервис Google Drive, вам необходимо включить Drive API в стандартных облачных проектах.

    В своем стандартном облачном проекте включите Drive API:

    Включите API Диска

  • Все пользователи, ранее авторизовавшие скрипт, должны пройти повторную авторизацию. В большинстве случаев все пользователи, которые ранее авторизовали приложения, связанные с новым проектом, также должны пройти повторную авторизацию.
  • Если ваш скрипт связан со списком приложения в Google Workspace Marketplace, список вашего приложения, пользователи и отзывы не переносятся в новый проект. Вы должны создать список приложений в новом проекте, и ваши пользователи должны переустановить ваше приложение. Информацию о создании нового списка приложений см. в разделе Публикация приложения .
  • Вы не можете переключить сценарий обратно на проект по умолчанию. Apps Script удаляет проекты по умолчанию после того, как вы настроили сценарий на использование стандартного проекта.

Переключиться на другой стандартный облачный проект

Чтобы переключить существующий облачный проект скрипта на другой облачный проект, выполните следующие действия:

  1. Если у вас нет подходящего облачного проекта, создайте его, следуя инструкциям по созданию проекта . Задайте запоминающееся имя проекта, чтобы его можно было найти на странице управления ресурсами консоли Google Cloud . Apps Script использует это имя, когда просит пользователей авторизовать скрипт.
  2. Если вы хотите использовать существующий проект, откройте страницу «Управление ресурсами» консоли Google Cloud и найдите существующий проект для использования. Для проекта у вас должны быть роли «Обозреватель проекта» и «Редактор конфигурации OAuth» или роли с эквивалентными разрешениями. Вы не можете использовать проект, автоматически созданный с помощью Apps Script.
  3. Определите номер вашего облачного проекта .
  4. Откройте скрипт, облачный проект которого вы хотите заменить.
  5. Слева нажмите параметров проекта .
  6. В разделе «Проект Google Cloud Platform (GCP)» нажмите «Изменить проект» .
  7. Введите новый номер проекта и нажмите «Установить проект» .

Облачные проекты и общие диски

Общие диски (ранее — «Общие диски») предоставляют общие пространства, где группы пользователей Диска могут совместно работать над проектами Apps Script и документами Диска. Общие диски полезны при совместной разработке скриптов, надстроек и веб-приложений, но они накладывают некоторые ограничения на то, что вы можете делать со старыми облачными проектами по умолчанию.

Следующий список ограничений описывает, как облачные проекты взаимодействуют с общими дисками:

  • Если ваш проект скрипта использует стандартный проект, дополнительных ограничений нет, если проект скрипта находится на общем диске.
  • Если в вашем проекте скрипта используется проект по умолчанию, созданный 8 апреля 2019 года или после этой даты, дополнительных ограничений нет, если проект скрипта находится на общем диске.
  • Если в вашем проекте скрипта используется проект по умолчанию, созданный до 8 апреля 2019 г., применяются следующие ограничения, пока проект скрипта находится на общем диске:
    1. Вы не можете получить доступ к проекту по умолчанию с помощью пользовательского интерфейса Apps Script или консоли Google Cloud . Это ограничение не позволяет вам совершать действия, требующие прямого доступа к проекту .
    2. Вы не можете активировать расширенные услуги . Чтобы активировать расширенные услуги, переключитесь на стандартный проект.
    3. Когда вы перемещаете существующий проект Apps Script на общий диск, Google ограничивает доступ к облачному проекту по умолчанию. Вы по-прежнему можете получить доступ к проекту по умолчанию, если у вас был доступ до перемещения. Например, если вы создали сценарий в папке «Мой диск», а затем переместили его на общий диск, вы все равно сможете получить доступ к облачному проекту сценария. Возможно, ваши коллеги на общем диске не смогут этого сделать.
    4. Скрипт сохраняет имя облачного проекта, которое он имел до перемещения на общий диск. Даже если вы измените имя проекта на общем диске, пользователи, авторизовавшие скрипт, по-прежнему будут видеть старое имя в диалоговых окнах авторизации.

Чтобы избежать вышеуказанных ограничений для старых скриптов, переключитесь на стандартный проект .

Получить список проектов Apps Script Cloud

Если у вас есть разрешение resourcemanager.projects.list для папки проекта Apps Script вашей организации, вы можете просматривать все стандартные и стандартные проекты Apps Script Cloud в этой папке.

  1. Откройте страницу управления ресурсами консоли Google Cloud .
  2. Скопируйте идентификатор рядом с папкой Apps Script .
  3. Нажмите «Фильтр» > «Идентификатор родителя» и вставьте идентификатор папки Apps Script.

Удаление проектов Apps Script Cloud

Чтобы удалить проект Apps Script Cloud, выполните действия, описанные в разделе «Получить список проектов Apps Script Cloud» , выберите проект, который хотите удалить, и нажмите «Удалить» .

Чтобы удалить проект Apps Script с помощью gcloud , используйте следующие команды.

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

Дополнительную информацию об удалении проектов Cloud см. в разделе Завершение работы (удаление) проектов .