Перейти к содержимому
Открыть в приложении

Удобный способ просмотра. Узнать больше.

Дизайн и модификация Invision Community

Полноэкранное приложение на главном экране с push-уведомлениями, медалями и многим другим.

Чтобы установить это приложение на iOS и iPadOS
  1. Нажмите иконку «Поделиться» в Safari
  2. Прокрутите меню и нажмите На экран «Домой».
  3. Нажмите Добавить в правом верхнем углу.
Чтобы установить это приложение на Android
  1. Нажмите меню из трёх точек (⋮) в правом верхнем углу браузера.
  2. Нажмите Добавить на главный экран или Установить приложение.
  3. Подтвердите, нажав Установить.
Русский язык для Invision Community 5

Внешняя авторизация? Невозможно найти пользователя с введенными вами данными

На сколько я понимаю проблема в том чтобы декодировать пароль с внешней базы данных, привести его в текстовый вид, и с помощью него произвести аторизацию. Как это сделать???

Рекомендованные сообщения

  • Автор

Подробнее:

 

Есть сайт, недавно поставил к нему IPB 2.3.6. форум. Решил сделать единую базу пользователей от сайта.

Выбрал в дминке внешняя авторизация, в файле conf.php (который находиться в папке external) прописал все пути к базе данных сайта.

 

пытаюсь войти пользователем с базы данных сайта, выводиться ошибка:

 

Невозможно найти пользователя с введенными вами данными

 

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

 

 

Пожалуйста подскажите как что сделать, вчера весь день просидел, ничего не получилось...

Изменено пользователем Qest

Ждите ответа программистов, если дождетесь.

Сайт вообще-то о дизайне....

Есть сайт, недавно поставил к нему IPB 2.3.6. форум. Решил сделать единую базу пользователей от сайта.

А что за движок? Может проще найти готовое решение?

 

 

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

Работа IP.Board с внешним реестром пользователей

  • Автор

Движок сайта - shopcms

 

Эту статью я читал кучу раз...Да вот ничего конкретно там не сказано что делать, вот например:

 

--------------------------------------------------------------------------------------------------

 

Если запрос к реестру ничего не вернул, то перевести систему авторизации в состояние NO_USER и передать управление IP.Board.

Сверить полученный в запросе 3 пароль с введенным пользователем.

Обычно для этой цели выделяется отдельный метод _compare_passwords. Который принимает два пароля и в соответствии с некоторой логикой сравнивает их. Что такое логика? Сравнивать обыкновенно приходится некоторый хэш (hash) пароля из реестра и чистый (plain-text) пароль. Естественно для приема решения о совпадении паролей их необходимо привести к одному виду, а так как хэширование это однонаправленная функция (нет обратного преобразования hash→plain-text), то хэшируют чистый пароль. Хэширование может быть многоэтапным с добавлением соли (salt) и с применением различных криптографических алгоритмов - это и есть логика.

В случае различия паролей - перевести систему авторизации в состояние WRONG_AUTH и передать управление IP.Board.

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

Если пользователь в локальном реестре не найден, попробовать его создать.

Если создать не получилось, то перевести систему авторизации в состояние NO_USER и передать управление IP.Board.

В противном случае - перевести систему в состояние SUCCESS

 

Собственно в теории это так, а за кодом обращаемся в ./sources/loginauth/external/auth.php

 

--------------------------------------------------------------------------------------------------

 

Расписано все общими фразами, а как это сделать и осущесвить?

Движок сайта - shopcms

Увы. Не знаю его.

 

Эту статью я читал кучу раз...Да вот ничего конкретно там не сказано что делать

А конкретно, нечего не напишешь. Там дан общей алгоритм. Надо знать движок IPB и движок сайта.

 

Если поискать на ibresource, то в форуме было несколько готовых решений, на базе этого алгоритма. Вчера искал, но не попались. Если увижу, дам ссылку.

 

Расписано все общими фразами, а как это сделать и осущесвить?

Я начинал делать авторизацию для себя, но не доделал. Время ... Да и с выход IP.Board 3, для 2-ой версии делать стало не интересно.

  • Автор

Ph-A, проблема решена, окозалось что движок shopcms хеширует пароли по Base64. Пришлось вставить алгоритм преобразования пароля из Base64 в текстовый формат!

 

Так, теперь возникли другие вопросы.

После того как пользователсь авторизируется, форум просит его ввести емейл. Как сделать так чтобы форум автоматически брал емейл с базы данных сайта, как он это делает с логином и паролем???

 

PS, а чем 3 версия лучше?

Изменено пользователем Qest

Ph-A, проблема решена, окозалось что движок shopcms хеширует пароли по Base64. Пришлось вставить алгоритм преобразования пароля из Base64 в текстовый формат!

Я это и имел в виду. Что каждый движок, извращается по своему.

 

После того как пользователсь авторизируется, форум просит его ввести емейл. Как сделать так чтобы форум автоматически брал емейл с базы данных сайта, как он это делает с логином и паролем???

Я не знаю, как вы сделали. Но кто мешает и подхватывать и емейл?

 

 

PS, а чем 3 версия лучше?

Она новая. Она поддерживается и будет развиваться.

Создайте аккаунт или войдите в него для комментирования

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.