Это, конечно, возможно.
Если вы используете учетные записи Google для аутентификации, пользователь входит в систему, публикуя свои учетные данные в Google, и Google возвращает маркер аутентификации на ваш сайт, который затем сохраняется в виде файла cookie в браузере пользователя. Токен действителен до истечения срока действия файла cookie (по умолчанию 24 часа) или до выхода пользователя из системы.
Если вы хотите отслеживать несколько сеансов входа в систему, вы можете написать обработчики, предназначенные для запуска после входа или выхода из системы. Если ваш обычный URL возврата после входа в систему - "/ do_stuff", вы можете изменить его на "/ finish_login? Next =% 2Fdo_stuff". В этом обработчике вы можете создать сущность в хранилище данных, представляющую сеанс, со ссылкой на учетную запись Google, IP-адрес, который вошел в систему, и метку времени входа в систему (текущую метку времени). Вы можете записать ключ сущности сеанса в другой файл cookie в браузере пользователя. После того, как вы закончите, перенаправьте на «следующий» URL.
После выхода из системы у вас может быть подобный обработчик, который проверяет наличие файла cookie ключа сущности сеанса, удаляет сущность и удаляет cookie.
Если вы хотите показать пользователю, что он вошел в систему из нескольких мест, запросите сущности сеанса, связанные с его учетной записью Google, которые имеют возраст менее 24 часов (или любое другое время истечения срока действия cookie).
Если вы хотите удаленно выйти из другого сеанса, вам может потребоваться написать собственную версию декоратора login_required, которую Google предлагает в webapp.util. Ваша версия должна будет подтвердить, что пользователь вошел в систему, проверить, что отправил куки-файл сессионного ключа, и убедиться, что связанный объект все еще существует и принадлежит правильной учетной записи.