@Quttar72
Изучаю asp.net core mvc

Что точно идентифицирует Google аккаунт при аутентификации на сайте?

Я создаю Web-Приложение с поддержкой Google аутентификации с помощью OpenID.
На всякий случай опишу порядок действий при аутентификации в моем приложении (хотя это наверняка самый банальный способ)
1. Пользователь нажимает кнопку авторизации с помощью Google
2. Открывается всплывающее окно браузера, в котором он подтверждает вход
3. Приходит Post запрос на endpoint входа по idtoken от Google (похоже что его открывает скрипта Google на странице с кнопкой)
4. Происходит проверка с помощью библиотеки токена, который находится в поле credentials
5. В результате у меня есть объект payload, в котором есть вот такие свойства
6324463d7b6a2989138325.jpeg
Я понимаю, это не все поля, но это именно те данные которые относятся к google аккаунту. Так вот теперь на основании их мне надо создать аккаунт уже в приложении. Вроде бы можно использовать почту, чтобы уникально идентифицировать пользователя и по ней находить его аккаунт когда он будет снова входить на сайт. Но вдруг есть какие-то нюансы, что пользователь может её у себя сменить. Да и не должно ли быть какого-то уникального идентификатора пользователя?
  • Вопрос задан
  • 141 просмотр
Решения вопроса 1
vabka
@vabka Куратор тега ASP.NET
Токсичный шарпист
Тебе нужно свойство Subject - это как раз уникальный идентификатор в рамках гугла.

Документация:
https://developers.google.com/identity/protocols/o...

Исходники:
https://github.com/googleapis/google-api-dotnet-cl...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы