Автоматическая аутентификация

Автоматическая аутентификация

от Игорь Андреев -
Количество ответов: 5

Всем привет!

Прошу помощи.

Нужна реализовать в системе Moodle автоматическую аутентификацию PHP. Расскажу в кратце, есть сайт (Система Электронной Библиотеки) у них есть "Автоматическая аутентификация PHP", есть скрипт.

Пример создания строки параметров для аутентификации на PHP:

$secretKeyStr = '*код_скрыт*';

$timestamp = date( 'YmdHis' );
$signature = md5( $userId . $secretKeyStr . $timestamp );
$link = 'http://znanium.com/autosignon.php?domain=*домен скрыт*' .
     '&id=' . $userId .      // id пользователя в вашей базе, например. Но может быть любой строкой
     '&login=' . urlencode( $login ) . // логин пользователя на вузовском портале, nvarchar(20), UTF-8
     '&name=' . urlencode( $name ) .   // имя пользователя, UTF-8
     '&patr=' . urlencode( $patronymic ) . // отчество пользователя, UTF-8
     '&lname=' . urlencode( $last_name ) . // фамилия пользователя, UTF-8
     '&time=' . $timestamp .        // время запроса в формате YYYYMMDDhhmmss
     '&sign=' . $signature;        // цифровая подпись MD5


Пример строки для перехода по ссылке в личный кабинет ЭБС:
   http://znanium.com/autosignon.php?domain=*домен-скрыт*&id=70434&login=student&name=%D0%9D%D0%B0%D1%82%D0%B0%D0%BB%D1%8C%D1%8F&patr=%D0%90%D0%BD%D0%B4%D1%80%D0%B5%D0%B5%D0%B2%D0%BD%D0%B0&lname=%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D0%BD%D0%B0%D1%8F&time=20120118101555&sign=c2e57162eb5decae34071315b1087649

В целях безопасности некоторые элементы скрипта, скрыл.
В ответ на Игорь Андреев

Re: Автоматическая аутентификация

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

Всё конечно очень подробно, только давайте с самого начала.

Вы хотите, чтобы пользователь входил в Moodle с тем же логином/паролем, что и в библиотечной системе? Или ноборот, чтобы пользователь входил в библиотечную систему, используя данные из moodle?

Как я понимаю, вам всего лишь нужно, чтобы пользователь мог из moodle перейти в библиотечную систему? Тогда вам сначала нужно придумать, в какой момент он должен переходить на этот сайт. Где должна быть ссылка? В блоке устроит? 

В ответ на Vadim Dvorovenko

Re: Автоматическая аутентификация

от Игорь Андреев -

Мы хотим реализовать у нас автоматическую регистрацию при вводе пароля от электронной библиотеки, но и так же сделать форму входа и от наших логинов. (например: для админов) которым привязка к аккаунту от эл. библиотеки ненужна. 

Так же хотим под каждым курсом написать список литературы и где нибудь в блоке сбоку или где еще оставить что-то типа "Перейти к библиотеки" и там студенты уже сами смогут выбрать нужный перечь литературы.

Важно чтобы к примеру при входе в сдо, было написано типа: Зайти по данным электронной библиотеки и если нет логина в базе с такими же данными как у электронной библиотеки, то и система бы его создавала. 

Еще можно рассмотреть вариант привязки уже существующих аккаунтов к аккаунтам библиотеки. (Необязательно)

В ответ на Игорь Андреев

Re: Автоматическая аутентификация

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

Насколько я понимаю, ваш скрипт предназначен для входа в ЭБС с логином из Moodle. Это третий пункт здесь http://znanium.com/index.php?item=about&abmenuitem=7 То есть можно сделать в Moodle блок с возможностью перейти в ЭБС из Moodle

А вот войти в moodle с паролем от ЭБС этот скрипт не позволит.

В ответ на Vadim Dvorovenko

Re: Автоматическая аутентификация

от Vadim Dvorovenko -
Изображение пользователя Developers Изображение пользователя Майнтейнер перевода

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