Я использую Google OAuth через Laravel Socialite для аутентификации всех пользователей в моем веб-приложении.
Мне нужно, чтобы сеанс пользователя завершался как можно скорее, если пользователь выходит из своей учетной записи Google.
Я пытаюсь настроить промежуточное программное обеспечение, которое будет выполнять регулярные проверки, если пользователь все еще входит в Google.Но я не могу найти способ спросить «Является ли user@example.com по-прежнему текущим пользователем в Google?»
Я пытался получить \Socialite::driver('google')->user()
в промежуточном ПО, но, похоже, это не работает безсделать перенаправление в Google заранее.Я бы хотел, чтобы эта проверка была максимально быстрой и ненавязчивой.Он также должен работать во время фонового вызова ajax.
Кажется, что было бы тривиально с использованием аутентификации на стороне клиента, так как gapi.auth2.init().isSignedIn.get()
.Однако это означало бы, что я должен запросить у пользователей две авторизации (на стороне сервера и на стороне клиента), что кажется неправильным.
Глядя на документы в Google , я не вижу ничего, что позволило бы мнепроверять их статус аутентификации отдельно от повторной аутентификации.Маркер доступа не истекает при выходе из системы ... Есть ли обходной путь?