Jump to content
Дизайн и модификация Invision 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

Подробнее:

 

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

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

 

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

 

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

 

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

 

 

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

Edited by Qest

Share this post


Link to post

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

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

Share this post


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

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

 

 

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

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

Share this post


Link to post

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

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

 

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

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

 

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

 

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

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

Share this post


Link to post

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

 

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

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

 

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

Edited by Qest

Share this post


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

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

 

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

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

 

 

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

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

Share this post


Link to post

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...