Авторизация через социальные сети #3

В продолжении темы, портировал авторизацию через социальные сети на Ionic Framework. Пока отладил на iOS, на Android не тестировал, но учитывая кросс-платформенный подход вопрос не сложный.

Пакет: https://www.npmjs.com/package/ionic_auth_social. Подробная инструкция позволит за 5-10 минут интегрировать в свое приложение авторизацию.

Видео демонстрация авторизации

Началось все с изучения протокола OAuth и страниц которые каждая социальная сеть вызывает. Разобрал ВКонтакте, Одноклассники и Яндекс. Потом дополнил зарубежными популярными соц. сетями: Facebook, Microsoft и Google.

Адреса серверов социальных сетей

Яндекс

Вызов приложения: yandexauth2://authorize
Вызов сайта: https://oauth.yandex.ru/authorize
Обратный адрес: yx${AppID}://authorize

GET параметры:

  • response_type=code
  • client_id=${appid}
  • redirect_uri=yx${appid}://authorize

ВКонтакте

Вызов приложения: vkauthorize://authorize
Вызов сайта: https://oauth.vk.com/authorize
Обратный адрес: vk${AppID}://authorize

GET параметры:

  • client_id=${appid}
  • revoke=1
  • v=5.40
  • redirect_uri=vk${appid}://authorize
  • response_type=token

Одноклассники

Вызов приложения: okauth://authorize
Вызов сайта: https://connect.ok.ru/oauth/authorize
Обратный адрес: ok${AppID}://authorize

GET параметры:

  • client_id=${appid}
  • scope=VALUABLE_ACCESS
  • redirect_uri=ok${appid}://authorize
  • response_type=token

Facebook

Вызов приложения: fbauth2://authorize
Вызов сайта: https://www.facebook.com/v3.2/dialog/oauth
Обратный адрес: fb${AppID}://authorize

GET параметры:

  • client_id=${appid}
  • redirect_uri=fb${appid}://authorize
  • response_type=token

Google

Вызов сайта: https://accounts.google.com/o/oauth2/v2/auth
Обратный адрес: com.googleusercontent.apps.${AppID}:

GET параметры:

  • scope=profile
  • client_id=${appid}.apps.googleusercontent.com
  • response_type=code
  • redirect_uri=com.googleusercontent.apps.${appid}

Microsoft

Сайт: https://login.microsoftonline.com/common/oauth2/v2.0/authorize
Обратный адрес: msal${this.globalAppID}://auth

GET параметры:

  • client_id=${appid}
  • response_type=code
  • scope=openid
  • redirect_uri=msal${appid}://auth
  • response_mode=query

Развитие

На днях добавлю поддержку Android. Позже сделаю серверный скрипт для проверки верности токена и получении профиля пользователя социальной сети.

Можно добавить еще социальных сетей…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *