Некоторое время назад настройки Google Apps (которые теперь назывались G Suite), связанные с App Engine, были перенесены в Google Cloud Console.Ограничить доступ App Engine к учетным записям G Suite на пользовательском домене
В настоящее время, документированный способ ограничить доступ к экземпляру App Engine для пользователей ассоциированного G Suite, через эту страницу Google Cloud Console:
При нажатии на кнопку [Изменить] на этой странице в разделе «Аутентификация Google» вы можете переключаться между «API учетных записей Google» и «Домен Google Apps» (который на самом деле должен называться «G Suite domain»).
Существует поле ввода ниже этого выпадающего списка, но не объяснение того, что должно быть введено здесь. Через пробную ошибку я обнаружил, что это должно быть доменное имя связанного G Suite.
В минимальном Hello World приложения развернуты в App Engine, мы устанавливаем параметр аутентификации:
login: required
Пожалуйста, обратите внимание, что некоторые услуги нашего приложения написаны на Python, другие в Java.
Доступ к экземпляру экземпляра приложения с помощью имени [project-id] .appspot.com работает очень хорошо, Google запрашивает учетные данные в соответствующем G Suite и перенаправляет соответствующим образом через процесс аутентификации на целевой путь.
Проблема заключается в том, что при доступе к экземпляру App Engine через собственный домен аутентификация вообще не работает. Это покажет 500, и журнал сервер читает:
аутентификация для домена example.com Служба Google может быть выполнена только тогда, когда запросы обслуживаются из поддомена этого домена, или он был утвержден через Google Apps Панель управления. См. https://developers.google.com/appengine/articles/auth
Связанная страница в этом сообщении об ошибке больше не существует, т. Е. Она была заменена страницей, которая описывает аутентификацию в целом. Подняв эту старую страницу из онлайн-кэшей, я вижу, что она описала старый способ Google Apps добавления проекта App Engine на страницу служб Google Apps, но теперь эта функция была удалена или перенесена в Google Cloud Console.
Для того, что стоит, поддержка Google не может предлагать какую-либо помощь, кроме как указывать мне документацию на снимках выше.
Есть ли здесь кто-нибудь, кому удалось ограничить доступ App Engine к учетным записям G Suite через собственный домен? Или эта функция просто сломана?
В частности, я ищу ответы, которые решают эту проблему в контексте приложений Python и/или Java GAE, а также для кода, который демонстрирует, как решить эту проблему программно, если это необходимо.
Был ли сервис, создающий эту конкретную 500 ошибку, написанную на языке python или java? –
Конкретная услуга, в которой мы столкнулись с ошибкой, была написана на Python, но если выяснится, что ограничение доступа к учетным записям G Suite возможно только для приложений Java, мы будем мигрировать. Отсюда и широкий круг вопросов. – nikola
Это не ясно из скриншотов, но у вас также есть домен G Suite, указанный в разделе «Пользовательские домены», и вы делаете запрос в приложение через пользовательский домен, а не домен appspot.com? – Adam