Страницы

Поиск по вопросам

четверг, 5 декабря 2019 г.

Как back-end узнаёт о Google-авторизации в Android-приложении?

#android #ios #ruby_on_rails #авторизация #google_api


Я разрабатываю серверную часть приложения на Rails.
Front-end — мобильное приложение на Android / iOS.

Задача — в приложении должна быть возможность входить через Google-аккаунт. Но я
не понимаю, как всё это должно взаимодействовать.
Даже если пользователь авторизуется именно в приложении, как back-end об этом узнает?
    


Ответы

Ответ 1



Делается это так: На клиенте каким-то образом (через SDK соц.сети или через браузер (в т.ч. встроенный в приложение)) юзер авторизуется в вашем приложении. Под последним имеется в виду набор из сгенерированных соц.сетью ключей, которые надо указывать при обращении к API оной. В случае гугла оно, вроде, и не нужно. После авторизации, в зависимости от соц.сети и всяких разных условий (секурность там всякая etc) с клиента на ваш сервер шлётся ID юзера (случай гугла), authCode или accessToken. В зависимости от того, что именно клиент вам присылает надо или валидировать ID, или обменять authCode на accessToken. Если присылается сразу accessToken то переходим к след. пункту. Теперь у вас есть все возможности получения всех возможных (разрешённых юзером) данных юзера. Либо как в случае с гуглом, после проверки присланного ID вы получаете объект юзера и делаете с ним что хотите (в БД кладёте, например или обновляете дату его последнего посещения) или, имея токен запращиваете его данные из API соц. сети. Вот гугловая дока по поводу сервера: https://developers.google.com/identity/sign-in/web/backend-auth Там написано, что есть либы под JAVA, NODE.JS, PHP, PYTHON

Комментариев нет:

Отправить комментарий