Звонок с внешнего сервера, Google Apps Script, опубликованный в виде веб-приложения с ограничениями Любой пользователь домена - PullRequest
0 голосов
/ 17 января 2020

У меня есть GAS, который может вызываться в режиме POST внешним сервером (не пользователем, поэтому мы говорим о межсерверном взаимодействии)

Функция сценария doPOST выполняет действие только над Google Диск владельца скрипта (создает документ на основе параметров, переданных POST и перемещает другой файл)

Все работает правильно, если скрипт, опубликованный как Web App, установлен как «кто имеет доступ к the app = publi c (вход в систему не требуется) "Очевидно, что в этом случае сервер, выполняющий вызов, не имеет проблем.

Если вместо этого сценарий установлен как" кто имеет доступ к приложению = любой пользователь в домен ххх ", тогда вызов должен быть каким-то образом аутентифицирован.

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

Мои рассуждения таковы (но не сказано, что это правильно): - мне нужен токен OAuth2? Нет, потому что сценарий, который настроен на «запуск от имени меня», уже получил токен авторизации, фактически с «кто имеет доступ к приложению = publi c (вход в систему не требуется)», все работает правильно. - поэтому я просто должен быть распознан как «кто-то из домена xxx»… возможно, мне просто нужно создать ключ API и использовать его в заголовке вызова POST. Например: «Авторизация»: «Носитель» + apiKey

к сожалению, это не работает, я отмечаю, что я уже переместил скрипт из проекта облачной платформы, управляемой приложениями, в стандартный проект GCP, и учетные данные API, с которыми я пытался работать, были созданы в том же проекте.

спасибо всем, кто может мне помочь!

...