Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Qest

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

Recommended Posts

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

Share this post


Link to post
Share on other sites

Подробнее:

 

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

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

 

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

 

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

 

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

 

 

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

Edited by Qest

Share this post


Link to post
Share on other sites

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

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

Share this post


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

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

 

 

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

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

Share this post


Link to post
Share on other sites

Движок сайта - 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

 

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

 

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

Share this post


Link to post
Share on other sites
Движок сайта - shopcms

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

 

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

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

 

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

 

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

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

Share this post


Link to post
Share on other sites

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

 

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

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

 

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

Edited by Qest

Share this post


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

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

 

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

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

 

 

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

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...