Каждый проект Apps Script использует Google Cloud для управления авторизацией, расширенными службами и другими деталями. Для настройки этих параметров и управления ими с каждым проектом Apps Script связан проект Google Cloud . В вашем проекте сценария может использоваться проект по умолчанию , автоматически создаваемый Apps Script, или стандартный проект , созданный вами самостоятельно. Как правило, проекты по умолчанию хороши для повседневных или простых сценариев, но вам следует использовать стандартный проект для любого сложного приложения коммерческого качества или приложения, которое вы собираетесь опубликовать.
Вы можете переключиться с проекта по умолчанию на стандартный проект в любое время, но вы не можете вернуться к использованию проекта по умолчанию. Лучше всего выбрать облачный проект, который использует ваш скрипт, на ранней стадии разработки. Позднее переключение может привести к осложнениям, например, к необходимости повторной авторизации пользователей.
Облачные проекты по умолчанию
Когда вы создаете проект Apps Script, Apps Script создает облачный проект по умолчанию, который работает в фоновом режиме.
- Для большинства сценариев вам никогда не потребуется просматривать или настраивать этот проект по умолчанию. Сценарий приложений обрабатывает необходимые взаимодействия с Google Cloud. Например, если вы активируете расширенную службу в редакторе сценариев приложений, сценарий приложений активирует расширенную службу в облачном проекте по умолчанию при сохранении проекта сценария.
- Для некоторых скриптов вам необходимо взаимодействовать с консолью 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. Чтобы получить доступ к проекту по умолчанию, перейдите к настройкам проекта сценария и щелкните номер проекта.
Удалить облачные проекты по умолчанию
Если вы являетесь администратором, вы можете удалять облачные проекты по умолчанию, как и стандартные облачные проекты. См. раздел Удаление проектов Apps Script Cloud .
Если вы не являетесь администратором, вы не можете удалять проекты по умолчанию. Однако Apps Script удаляет проекты по умолчанию в следующих случаях:
- Если вы удалите проект сценария или переключите его на использование стандартного проекта, сценарий приложений удалит проект по умолчанию, прикрепленный к сценарию, вместе со всеми настройками или содержащейся в нем информацией.
- Если сценарий не выполняется в течение 180 дней или более, сценарий приложений удаляет связанный с ним проект по умолчанию. Если скрипт запускается после того, как Apps Script удалит свой проект по умолчанию, Apps Script создаст его для скрипта.
Стандартные облачные проекты
Облачные проекты по умолчанию — лучший вариант для большинства проектов сценариев, если только вам не нужно настраивать проект вручную. В таких ситуациях вы должны переключить проект сценария на использование стандартного проекта .
В следующих разделах описывается, когда для сценария приложений требуется стандартный проект, свойства таких проектов и общие задачи, выполняемые с ними. Вы можете выполнять перечисленные ниже задачи только со стандартными проектами.
Когда Apps Script требует стандартных облачных проектов
Вы должны использовать стандартный проект в следующих ситуациях:
- Чтобы опубликовать свой проект скрипта в качестве надстройки в Google Workspace Marketplace .
- Чтобы проверить клиент OAuth проекта скрипта .
- Если у вас есть приложение, которому необходимо выполнять функции в проекте скрипта, используя метод
scripts.run
API-интерфейса Apps . - Чтобы просмотреть журналы Google Cloud вашего скриптового проекта в консоли Google Cloud , выполните следующие действия. Консоль Google Cloud предоставляет больше инструментов для фильтрации и просмотра журналов и может быть более полезной, чем упрощенное представление, предоставляемое панелью инструментов Apps Script .
- Чтобы просмотреть отчеты об ошибках проекта сценария с помощью Error Reporting .
- Чтобы создать диалог открытия файла .
- Если вам в противном случае требуется ручное управление настройками Google Cloud проекта.
Стандартные свойства облачного проекта
Стандартные проекты обладают следующими свойствами:
- Вы можете получить доступ ко всем настройкам Google Cloud для проекта прямо из консоли Google Cloud . Это позволяет вам активировать API, настроить учетные данные для авторизации и настроить другие детали.
- Когда вы удаляете проект сценария или переключаете его на использование другого стандартного проекта, исходный стандартный проект остается и может использоваться повторно.
- При активации расширенного сервиса в проекте сценария необходимо вручную активировать соответствующий API в стандартном проекте.
- Несколько проектов сценариев и других приложений могут совместно использовать один и тот же стандартный проект. Если вы собираетесь опубликовать проект скрипта в Google Workspace Marketplace в качестве надстройки , он должен иметь собственный стандартный проект. Опубликованные приложения не могут совместно использовать облачные проекты с другими приложениями.
- Если вы хотите выполнять функции в проекте сценария из другого приложения с помощью метода
scripts.run
API сценариев приложений , проект сценария и вызывающее приложение должны совместно использовать один и тот же стандартный проект. - Когда Apps Script запрашивает у пользователя авторизацию сценария, использующего стандартный проект, для идентификации сценария используется имя облачного проекта (а не имя проекта сценария). По этой причине обязательно задайте соответствующее имя облачного проекта.
Доступ к стандартному облачному проекту
Чтобы получить доступ к стандартному проекту, связанному с вашим проектом сценария, выполните следующие действия:
- Откройте проект скрипта приложений.
- Слева нажмите проекта .
- В разделе Проект Google Cloud Platform (GCP) нажмите на номер проекта.
Вы также можете найти стандартный проект прямо на странице «Управление ресурсами» консоли Google Cloud .
Активировать API в стандартном облачном проекте
Часто приложению Apps Script требуется доступ к другому API Google. Для этого необходимо активировать API в соответствующем облачном проекте. Активируйте API, выполнив следующие действия:
- Откройте облачный проект .
- Щелкните > API и службы . Меню
- Щелкните Включить API и службы .
- В поле поиска введите API, который хотите активировать, и нажмите Enter .
- Щелкните API в результатах поиска, а затем нажмите Включить , чтобы активировать API для этого облачного проекта.
Вам может быть предложено принять Условия использования для API Google или Google Cloud . Внимательно ознакомьтесь с Условиями обслуживания, прежде чем принять их.
В зависимости от приложения вам также может потребоваться настроить API, выбрав его на панели API и служб .
Определите идентификатор и номер стандартного облачного проекта
Все облачные проекты имеют имя проекта, идентификатор проекта и номер проекта. Иногда эти идентификаторы необходимы для настройки служб или выполнения других задач.
Чтобы определить идентификатор и номер стандартного проекта, выполните следующие действия:
- Откройте облачный проект .
- В правом верхнем углу нажмите Еще > Настройки проекта .
- Просмотрите имя проекта , идентификатор проекта и номер проекта на появившейся панели настроек . Номер проекта состоит только из цифр, а идентификатор проекта является буквенно-цифровым. Вы можете изменить имя проекта , которое отображается пользователям во время запросов авторизации.
Просмотр журналов Google Cloud и отчетов об ошибках в консоли Google Cloud
Если вы используете ведение журнала Google Cloud или отчеты об ошибках для своего проекта сценария, вы можете просмотреть эти журналы и отчеты в консоли Google Cloud , выполнив следующие действия:
- Откройте облачный проект .
- Нажмите Меню .
- Прокрутите вниз до раздела «Операции» и нажмите «Ведение журнала» > «Проводник журналов» .
- Чтобы просмотреть отчеты об ошибках, прокрутите вниз до раздела «Операции» и нажмите «Отчеты об ошибках » . Если вам будет предложено настроить отчеты об ошибках, это означает, что ваш проект сценария еще не зарегистрировал никаких исключений.
Заполните экран согласия OAuth.
При использовании сервисов, требующих OAuth, Google предлагает пользователям авторизовать эти сервисы. Настройки экрана согласия OAuth позволяют указать некоторую информацию, которую Google предоставляет пользователям, например имя приложения и URL-адрес условий обслуживания.
Облачные проекты по умолчанию автоматически создают экран согласия на основе сведений о проекте Apps Script; вы не можете изменить эти настройки. Стандартные облачные проекты позволяют настраивать эту информацию. Вы можете настроить экран согласия вашего скрипта, выполнив следующие действия:
- Откройте облачный проект .
- Щелкните > API и службы > Учетные данные . Меню
- Щелкните Настроить экран согласия .
- Заполните каждый раздел рабочего процесса экрана согласия.
- Чтобы записать изменения на каждом этапе рабочего процесса, нажмите «Сохранить и продолжить» .
Создайте учетные данные OAuth
Скрипт приложений обычно настраивает OAuth для сервисов, которые использует ваш скрипт. Для некоторых приложений необходимо создать дополнительные учетные данные OAuth (идентификаторы клиента и секреты клиента). Вы можете сделать это только со стандартными проектами.
Чтобы создать идентификатор клиента и секрет клиента для проекта скрипта, выполните следующие действия:
- Откройте облачный проект .
- Щелкните > API и службы > Учетные данные . Меню
- Щелкните Создать учетные данные > Идентификатор клиента OAuth .
- В разделе Тип приложения выберите тип приложения и при необходимости заполните полученную форму. Когда закончите, нажмите «Создать» .
- В появившемся диалоговом окне нажмите «Загрузить JSON» . Этот файл можно использовать для настройки OAuth.
Добавление дополнительных владельцев к стандартному облачному проекту
В стандартный проект можно добавить дополнительных владельцев или другие роли. Если вы работаете над проектом совместно, это гарантирует, что кто-то из вашей команды всегда будет иметь доступ к настройкам Google Cloud проекта сценария.
Вы можете добавить дополнительных владельцев или другие роли в стандартный проект, выполнив следующие действия. У вас должны быть права на редактирование проекта, чтобы внести какие-либо из этих изменений:
- Определите, кто должен быть вашими соавторами. Мы рекомендуем вам создать или использовать существующую группу Google. Вы также можете указать домены в списке соавторов, чтобы включить всех пользователей в этом домене.
- Откройте облачный проект скрипта .
- Щелкните > IAM и администратор > IAM .
- Вверху нажмите Добавить .
- Следуйте инструкциям на экране, чтобы добавить одного или нескольких новых участников и их роли в облачный проект. Вы можете добавить отдельные адреса электронной почты, группы Google или домены в качестве новых участников.
- Нажмите Сохранить .
Группируйте несколько скриптов в одном облачном проекте
У вас может быть несколько проектов Apps Script, использующих один и тот же стандартный облачный проект. Для этого создайте стандартный проект, а затем переключите каждый проект сценария на его использование. Вы не можете сделать это с проектами по умолчанию.
Используйте другой стандартный облачный проект
Вы можете переключить проект сценария, чтобы он использовал другой стандартный облачный проект. Если ваш скрипт требует ручной настройки облачного проекта, вы должны переключиться с проекта по умолчанию на стандартный проект. Чтобы узнать больше о том, когда вам нужно использовать стандартный проект, обратитесь к стандартным облачным проектам .
Последствия перехода на другой стандартный облачный проект
Если вы переключите свой сценарий с проекта по умолчанию или на другой стандартный проект, это будет иметь следующие последствия:
- Если вы активировали расширенные сервисы для своего скрипта, вы должны включить соответствующие API в новом облачном проекте. Вы потеряете все данные, связанные с расширенными службами в предыдущем облачном проекте. Чтобы узнать, как включить API в вашем облачном проекте, см. статью Включение API Google Workspace .
- Все пользователи, ранее авторизовавшие скрипт, должны авторизоваться повторно. В большинстве случаев все пользователи, ранее авторизовавшие приложения, связанные с новым проектом, также должны пройти повторную авторизацию.
- Если ваш сценарий связан со списком приложений в Google Workspace Marketplace, ваш список приложений, пользователи и отзывы не переносятся в новый проект. Вы должны создать список приложений в новом проекте, а ваши пользователи должны переустановить ваше приложение. Для получения информации о создании нового списка приложений см. Публикация приложения .
- Вы не можете переключить скрипт обратно на проект по умолчанию. Сценарий приложений удаляет проекты по умолчанию после того, как вы настроили сценарий на использование стандартного проекта.
Переключиться на другой стандартный облачный проект
Чтобы переключить существующий облачный проект скрипта на другой облачный проект, выполните следующие действия.
- Если у вас нет подходящего облачного проекта, создайте его, следуя инструкциям по созданию проекта . Задайте запоминающееся имя проекта, чтобы его можно было найти на странице «Управление ресурсами» в консоли Google Cloud . Apps Script использует это имя, когда просит пользователей авторизовать сценарий.
- Если вы хотите использовать существующий проект, откройте страницу управления ресурсами консоли Google Cloud и найдите существующий проект для использования. У вас должны быть роли Project Browser и OAuth Config Editor или роли с эквивалентными разрешениями для проекта. Вы не можете использовать проект, автоматически созданный Apps Script.
- Определите номер проекта вашего облачного проекта .
- Откройте скрипт, чей облачный проект вы хотите заменить.
- Слева нажмите проекта .
- В разделе Проект Google Cloud Platform (GCP) нажмите Изменить проект .
- Введите новый номер проекта и нажмите «Установить проект» .
Облачные проекты и общие диски
Общие диски (ранее — общие диски) предоставляют общие пространства, где группы пользователей Диска могут совместно работать над проектами Apps Script и документами Диска. Общие диски полезны при разработке скриптов, надстроек и веб-приложений в команде, но они накладывают некоторые ограничения на то, что вы можете делать со старыми облачными проектами по умолчанию.
В следующем списке ограничений описывается, как облачные проекты взаимодействуют с общими дисками:
- Если в вашем проекте сценария используется стандартный проект, дополнительные ограничения отсутствуют, если проект сценария находится на общем диске.
- Если в вашем проекте скрипта используется проект по умолчанию, созданный 8 апреля 2019 г. или позже, дополнительные ограничения отсутствуют, если проект скрипта находится на общем диске.
- Если в вашем проекте скрипта используется проект по умолчанию, созданный до 8 апреля 2019 г., применяются следующие ограничения, пока проект скрипта находится на общем диске:
- Вы не можете получить доступ к проекту по умолчанию с помощью пользовательского интерфейса Apps Script или консоли Google Cloud . Это ограничение не позволяет вам выполнять действия, требующие прямого доступа к проекту .
- Вы не можете активировать дополнительные услуги . Чтобы активировать расширенные услуги, переключитесь на стандартный проект.
- Когда вы перемещаете существующий проект Apps Script на общий диск, Google ограничивает доступ к облачному проекту по умолчанию. Вы по-прежнему можете получить доступ к проекту по умолчанию, если у вас был доступ до перемещения. Например, если вы создали сценарий в папке «Мой диск», а затем переместили его на общий диск, вы все равно можете получить доступ к облачному проекту сценария. Ваши соавторы на общем диске могут не иметь такой возможности.
- Сценарий сохраняет имя облачного проекта, которое было у него до перемещения на общий диск. Даже если вы измените имя проекта на общем диске, пользователи, авторизующие скрипт, все равно будут видеть старое имя в диалогах авторизации.
Чтобы избежать вышеуказанных ограничений для старых скриптов, переключитесь на стандартный проект .
Получите список проектов Apps Script Cloud
Если у вас есть разрешение resourcemanager.projects.list
для папки проекта Apps Script вашей организации, вы можете просматривать все стандартные и стандартные проекты Apps Script Cloud в этой папке.
- Откройте страницу управления ресурсами в консоли Google Cloud .
- Рядом с папкой Apps Script скопируйте идентификатор.
- Щелкните Фильтр > Родительский идентификатор и вставьте идентификатор папки 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
Дополнительные сведения об удалении облачных проектов см. в разделе Завершение работы (удаление) проектов .