Авторизация пользователей приложений и веб-сайтов с Webasyst ID

Михаил Ушенин

В обновлении фреймворка 1.14.4 мы добавили возможность для разработчиков реализовать для пользователей их приложений и веб-сайтов возможность входа с Webasyst ID. Для этого используется протокол oAuth 2.0.

Например, таким способом могут авторизоваться пользователи ваших нативных приложений для мобильных устройств или настольных компьютеров, сайтов с серверным кодом, написанном на любом языке программирования, или одностраничных SPA-приложений.

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

29 сентября 2020
  • waResearchLab 1 ноября 2020 00:47

    В статье по ссылке:

    1. Некорректный пример запроса прав. В приведенном варианте не работает вторая составляющая (license)

    Пример: profile+license:read

    2. На любые попытки произвести обновление токена авторизации получаю

    {"error":"invalid_request","error_description":"Unexpected method"}

    Допускаю, сам где-то ошибся, но хотелось бы подтверждения что метод рабочий, потому как визуально все честно: старый токен истёк, данные отправляются в соответствии с описанием.

  • waResearchLab 7 ноября 2020 01:11

    данные отправляются в соответствии с описанием

    Просто в описании обновления токена не описан один параметр:

    client_secret


  • waResearchLab 7 ноября 2020 03:38

    Вот какой интересный момент....

    Зайдя в настройки профиля в ЛК WA я могу удалить все EMail.  В принципе - почему нет? Но встает вопрос: а как авторизовываться? Находим ответ: через аккаунты соцсетей. А вот тут возникает другой вопрос: при авторизации по waID на стороннем сайте предлагается авторизация исключительно (и это логично) по паре EMail/пароль....  А EMail'а у аккаунта в WA нет.....

    Небольшой довесок: попробовал в аккаунте без привязанных аккаунтов соцсетей удалить из профиля EMail. EMail удалился. Но я, как пользователь, потерял возможность авторизации в ЛК WA. Вроде бы все логично, но что-то тут не так....

  • Михаил Ушенин 11 декабря 2020 18:01

    В приведенном варианте не работает вторая составляющая (license)

    Напишите, пожалуйста, в отдельной теме на форуме или в запросе в службу поддержки, с каким контактом (contact_id) на каком сайте (client_id) это не работает. И как именно не работает — какой ответ присылает сервер?

  • Михаил Ушенин 11 декабря 2020 18:16

    Просто в описании обновления токена не описан один параметр:

    Дополнили список параметров в описании — спасибо за замечание! На всякий случай: параметр client_secret для обновления токена авторизации нужно отправлять только из серверного кода — мобильные и SPA не должны его отправлять.

  • waResearchLab 11 декабря 2020 19:33

    И как именно не работает — какой ответ присылает сервер?

    При использовании 

    profile+license:read

    при первичной регистрации/авторизации во всплывающем окне пользователю сообщается что будут доступны только его данные (ФИО,  EMail и т.п.). Соответственно, только эти данные от WA и прилетают. При использовании же

    license:read

    при той же первичной регистрации/авторизации сообщается что будут доступны как  ФИО и пр, так и собственные лицензии.  Соответственно, от WA прилетает и то и другое.

    с каким контактом (contact_id) на каком сайте (client_id) это не работает

    Зависимости от clien_id и contact_id не выявлено. Проверялось с несколькими комбинациями обоих параметров.



Чтобы добавить комментарий, зарегистрируйтесь или войдите