Автоматическая регистрация пользователя - PullRequest
0 голосов
/ 04 марта 2012

В настоящее время я использую небольшой PHP-бэкэнд для управления веб-сайтом, а недавно я добавил еще одну функциональность через отдельный скрипт.Этот сценарий также требует входа в систему, и мой клиент считает утомительным и надоедливым иметь два разных входа в систему.Поэтому мне было интересно, можно ли создать скрипт или каким-либо другим способом, который мог бы автоматически войти в него во вторичном скрипте при нажатии на ссылку (эта будет доступна через меню в исходном бэкэнде).Иначе каковы мои варианты?Насколько сложно было бы изменить аутентификацию сценария 1 для соответствия сценарию 2?

Спасибо.

Ответы [ 3 ]

1 голос
/ 04 марта 2012

У вас есть несколько вариантов.

1) Выполните автоматическое использование его сохраненных учетных данных для входа с помощью имитируемого скрипта веб-браузера, но ни один веб-сайт не делает этого.

2) Более элегантно, используйте куки и сессии. При его правильном входе в систему создайте уникальный идентификатор сеанса (достаточно длинный, чтобы его было трудно вычислить в этом временном сеансе), срок действия которого истекает после ограничения по времени x или удаляется при выходе из него. Этот идентификатор сеанса будет храниться в отдельном файле на сервере (база данных в идеале для скорости), который вы проверяете с помощью файла cookie (который вы установили при его первоначальном входе в систему и который также записал файл на сервере) на каждой странице, для которой требуется пользователь Вы вошли в систему. (Вы проверяете файл cookie, сравниваете его с идентификатором сеанса, когда он проверяет, обслуживаете страницу, в противном случае происходит сбой).

Вот и все, просто.

0 голосов
/ 04 марта 2012

Если вы используете переменные $_SESSION, тогда не требуется никакой автоматической регистрации, поскольку это глобальная переменная, которая распознает пользователя, пока скрипт находится на том же веб-сайте / в домене.

0 голосов
/ 04 марта 2012

Вам это понадобится.

http://simplesamlphp.org/
Я решил эту проблему, передав параметр от site1, вошедшего в систему пользователя, когда они получают доступ к странице сценария site2.

...