HybridAuth и redirect_uri_mismatch
Василий добрый день!
Пытаюсь настроить авторизацию на сайте через HybridAuth, получил ключи приложеления в Гугл и Яндексе, прописал в настройках HybridAuth полученные данные этих сервисов — id и secret.
При попытке логина с Я пишет 404 ошибку и redirect_uri_mismatch. Гугл сначала показывает профиль через который войти хочу и после туже ошибку redirect_uri_mismatch.
В качестве Callback URI указывал мойсайт.ru/assets/components/hybridauth/action.php.
Подскажите в чем проблема?
Пытаюсь настроить авторизацию на сайте через HybridAuth, получил ключи приложеления в Гугл и Яндексе, прописал в настройках HybridAuth полученные данные этих сервисов — id и secret.
При попытке логина с Я пишет 404 ошибку и redirect_uri_mismatch. Гугл сначала показывает профиль через который войти хочу и после туже ошибку redirect_uri_mismatch.
В качестве Callback URI указывал мойсайт.ru/assets/components/hybridauth/action.php.
Подскажите в чем проблема?
Комментарии: 29
Сервисы Oath2 требуют точного url возврата:
http://example.com/assets/components/hybridauth/action.php?hauth.done=Google http://example.com/assets/components/hybridauth/action.php?hauth.done=YandexСо вчерашнего дня есть инструкции в картинках на rtfm.
Да Василий, все получилось. Спасибо.
с Mail.ru тоже разобрался, сначала белый экран был при попытке авторизации, создал в настройках новый ключ, и заработало. Подозреваю что в первый раз при создании ключа не писал ha.keys., поэтому и не срабатывал провайдер.
с Mail.ru тоже разобрался, сначала белый экран был при попытке авторизации, создал в настройках новый ключ, и заработало. Подозреваю что в первый раз при создании ключа не писал ha.keys., поэтому и не срабатывал провайдер.
Очень рад!
На будущее — все ошибки должны быть в системном журнале.
На будущее — все ошибки должны быть в системном журнале.
В том и проблема что ошибок не было. Хотя была одна, когда вызывал снипет HybridAuth с провайдером которого уже удалил.<cut/>
А так по логике и не должно было быть ошибок в системном журнале, т.к. ошибка direct_uri_mismatch происходила на стороне сервисов (Гугл, Яндекс) и до моего сайта ответ не доходил. А вот с мейлом когда ключ создал некорректно, и появлялся белый экран, почему не появилась запись в журнале не могу понять.
А так по логике и не должно было быть ошибок в системном журнале, т.к. ошибка direct_uri_mismatch происходила на стороне сервисов (Гугл, Яндекс) и до моего сайта ответ не доходил. А вот с мейлом когда ключ создал некорректно, и появлялся белый экран, почему не появилась запись в журнале не могу понять.
Чтобы не плодить тем, спрошу здесь.
В заметках про версию 0,3,0 написано
«При регистрации нового юезра добавлена проверка по email. Если такой адрес уже есть — учетка приклеится к нему.»
Я через минишоп, делаю заказ, создается пользователь с указанным email. Потом логинюсь через HybridAuth с провайдера у которого учетка с этим же email. В итоге имею 2 пользователей с одинаковым email-ом (разные логины).
Минишоп в качестве логина подставляет email, а HybridAuth берет у провайдера логин.
Как не создавать пользователя если уже такой есть email?
В заметках про версию 0,3,0 написано
«При регистрации нового юезра добавлена проверка по email. Если такой адрес уже есть — учетка приклеится к нему.»
Я через минишоп, делаю заказ, создается пользователь с указанным email. Потом логинюсь через HybridAuth с провайдера у которого учетка с этим же email. В итоге имею 2 пользователей с одинаковым email-ом (разные логины).
Минишоп в качестве логина подставляет email, а HybridAuth берет у провайдера логин.
Как не создавать пользователя если уже такой есть email?
Это дело я убрал, иначе любой мог бы поменять email у себя в твиттере, например, и залогиниться под нужным юзером.
То есть, это была натуральная дырка.
Сейчас для привязки дополнительных учеток юзер должен авторизоваться на сайте людбым способом. Иначе да, будет 2 юзера.
То есть, это была натуральная дырка.
Сейчас для привязки дополнительных учеток юзер должен авторизоваться на сайте людбым способом. Иначе да, будет 2 юзера.
Василий, с прошедшим НГ, побольше работы и денег!
Подскажите где была эта дыра, мне это нужно, т.к. привязка идет через сервисы почтовые, то подделка емайл стремится к нулю.
Скажите версию в какой это было или покажите если не трудно код, спасибо.
Не отвечаю на ваш коммент, т.к. с планшета и перекидывает на раздел ответы, если нажимаю ответить.
Подскажите где была эта дыра, мне это нужно, т.к. привязка идет через сервисы почтовые, то подделка емайл стремится к нулю.
Скажите версию в какой это было или покажите если не трудно код, спасибо.
Не отвечаю на ваш коммент, т.к. с планшета и перекидывает на раздел ответы, если нажимаю ответить.
Вот здесь, закомментировано.
Здравствуйте, Василий. Спрошу заодно по теме =). Настраиваю HybridAuth, все отлично настроилось, кроме Яндекса. Авторизует нормально, а после переадресации на сайт — как-будто и не авторизовало пользователя, не заходит, просто обновляется главная. В провайдерах прописан, настройки указаны: id и ключ. Подскажите, пожалуйста, что не так делаю?
Светлана, у Яндекса нужно прописывать id и secret
и проверьте чтобы Callback URL был вида example.com/assets/components/hybridauth/action.php?hauth.done=Yandex
у меня так настроено:
и проверьте чтобы Callback URL был вида example.com/assets/components/hybridauth/action.php?hauth.done=Yandex
у меня так настроено:
Может, сниппет вызываешь кэшированным? То есть, нужно [[!HybridAuth, а не [HybridAuth
Еще полезно посмотреть в системный журнал, если есть ошибки — то они там.
Еще полезно посмотреть в системный журнал, если есть ошибки — то они там.
Спасибо за ответы, но… Проверила настройки еще раз — id и secret указаны правильно, Callback URL тоже такого же вида — по инструкции на хабре делала. Сниппет вызывается с восклицательным знаком. В консоли браузера — пусто. Может еще есть идеи?
Так Василий писал, погляди ошибки в системном журнале Отчеты — журнал ошибок
и еще погляди в error.log на хостинге есть ошибка в это время или нет (когда скрипт выполняется)
и еще погляди в error.log на хостинге есть ошибка в это время или нет (когда скрипт выполняется)
Понимаю, что возможно глупый с Вашей точки зрения вопрос =) Можно поточнее, где посмотреть Отчеты — журнал ошибок? Гугл мне не помог. На хостинге — только подобие логов, и, кажись, со времен нового сайта они не пишутся.
Системный журнал — это логирование Modx, посмотреть в админке сайта Отчеты —> журнал ошибок.
что за хостинг?
что за хостинг?
Спасибо за быстрый ответ. Не догадалась, что речь о modx. Нет ошибок, последняя 27 числа прошлого месяца из-за того, что соединений много было =) Хостинг — beget.
Ну тогда если не секрет покажите пациента (страницу с авторизацией) хочется посмотреть.
Бегет вроде нормальный хостинг лог файлы должны писаться, единственное что в панели управления хостинга может нужно включить чтобы они писались.
Поищите на хостинге error.log папка log или в корне сайта. Кстати возможно что они видны только из панели управления хостинга.
З.Ы. Попробуй заново получить ключ в Яндексе для сайта и установи их, возможно поможет.
Бегет вроде нормальный хостинг лог файлы должны писаться, единственное что в панели управления хостинга может нужно включить чтобы они писались.
Поищите на хостинге error.log папка log или в корне сайта. Кстати возможно что они видны только из панели управления хостинга.
З.Ы. Попробуй заново получить ключ в Яндексе для сайта и установи их, возможно поможет.
Да какой секрет — pdru.ru
Нашла файл wget.1.log, в котором последние ошибки — с июля месяца прошлого года. В панели управлением журналы вообще были отключены. Включаю — просит подключить модуль статистики: пользователи, страны и т.д. Сомневаюсь, что это именно то, что нужно. Вообщем, не очень у меня от него приятные впечатления. Хотя, возможно, это после работы с colobridge =)
Нашла файл wget.1.log, в котором последние ошибки — с июля месяца прошлого года. В панели управлением журналы вообще были отключены. Включаю — просит подключить модуль статистики: пользователи, страны и т.д. Сомневаюсь, что это именно то, что нужно. Вообщем, не очень у меня от него приятные впечатления. Хотя, возможно, это после работы с colobridge =)
И только после повторной вставки ключа, я совершенно случайно заметила, что копируется он с пробелом впереди. Что при проверке было абсолютно незаметно. Убрала пробел — работает. Спасибо большое за помощь, Алексей.
да не за что.
а логи включите, пусть работают, поддержку поспрашивайте как их включить, будет легче жить.
а логи включите, пусть работают, поддержку поспрашивайте как их включить, будет легче жить.
ответил выше.
А какой нынче (для 0.7.0) Для Yanndex`a Callback URI?
Сделал по аналогии Твиттера: сайт.ru/components/hybridauth/?hauth.done=Yandex
получаю redirect_uri_mismatch
Что не так делаю?
Сделал по аналогии Твиттера: сайт.ru/components/hybridauth/?hauth.done=Yandex
получаю redirect_uri_mismatch
Что не так делаю?
Такая же фигня,
Ошибка 400
redirect_uri_mismatch
и http://example.com/assets/components/hybridauth/action.php?hauth.done=Yandex
и http://example.com/?hauth.done=Google
пробовал указывать яндексу.
?hauth.done=Google — для Яндекса?
Толково.
Толково.
Ошибся в копировании, копировал с описания с modx.com
Yandex конечно же указывал
Yandex конечно же указывал
Ну, тогда непонятно, почему у меня работает.
Я заметил что файла
http://example.com/assets/components/hybridauth/<b>action.php</b>?hauth.done=Yandex
нету в папке, при прямом заходе из браузера сервер ругается так-же
Его аж с версии 0.7.0 нет, о чем написано везде, где только можно.
bezumkin.ru/sections/components/1717/
bezumkin.ru/sections/components/1717/
Странно, пробовал же сначала так
У меня еще один вопрос по Tickets, при изменении типа ресурса у обычного документа на «Раздел тикетов», обратно поменять уже не получается (юзер по умолчанию).
http://example.com/?hauth.done=Google
, не работало, сейчас переставил компонент, попробовал и заработало. Спасибо большое.У меня еще один вопрос по Tickets, при изменении типа ресурса у обычного документа на «Раздел тикетов», обратно поменять уже не получается (юзер по умолчанию).
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.