• Как реализовать аутентификацию пользователя на собственном сервере из мобильного приложения с использованием входа через соц. сети?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Определяем UUID, ищем в базе этот UUID.
    При отсутствии этого UUID: привязываем к первому E-MAIL (вручную: логин+пароль или OAUTH) и отправляем на сервер, затем просим ввести желаемый LOGIN в системе.
    К LOGIN привязываем UUID.
    Получается связка: LOGIN->UUID->E-MAIL
    При входе из другой соц.сети: по UUID также кладёте новую почту на сервер.
    При входе с почтовым адресом - определяете UUID на основе имеющейся почты (дочерние элементы) и дальше - разветвление:
    1. ОДИН метод - авторизация через него.
    2. НЕСКОЛЬКО (несколько соц.сетей OAUTH, пароль) - выводим список возможных методов (НЕ E-MAIL-ОВ!)

    В общем, структура в итоге для одного аккаунта:
    LOGIN->[UUID-1]->[E-MAIL-1]
    .............................
    LOGIN->[UUID-1]->[E-MAIL-N]
    .............................
    LOGIN->[UUID-N]->[E-MAIL-N]

    Структура позволит зайти как с нескольких устройств (в том числе новых), так и с несколькими методами авторизации для всех этих устройств (вне зависимости от ОС и платформы).
    Ответ написан
    2 комментария