Ответ 1
(Этот ответ был ответом на исходный вопрос)
Как вы это сделаете? Или, как бы вы создаете сеанс с более длинным срок годности, чем другие?
Все созданные сеансы будут использовать такой же $config ['sess_expiration'] в config файл (по умолчанию: 7200 секунд), есть способ передать пользовательское значение
Продление срока действия cookie сеанса не будет работать для функции "запомнить меня", так как пользователь потеряет свой файл cookie сеанса, когда он закроет браузер. Если Code Igniter не имеет встроенной функции "помнить", тогда вам нужно будет написать что-то, чтобы отбросить файл cookie на длительный срок, содержащий информацию, которая позволит автоматически вводить пароль, когда сервер увидит его снова.
Там хорошая статья о Persistent Login Cookie Best Practice, которая может быть скомпонована как:
- Когда пользователь успешно войдет в систему с помощью Запомнить меня, войдите в систему cookie выдается в дополнение к стандартный файл cookie управления сеансом. 2
- Файл cookie для входа содержит имя пользователя пользователя и случайное число ( "токен" отсюда) от достаточно большое пространство. Имя пользователя и токен хранится как пара в таблица базы данных.
- Когда пользователь, не зарегистрированный пользователем, посещает сайт и представляет файл cookie для входа, имя пользователя и токен просматриваются в базе данных. 1. Если пара присутствует, пользователь считается аутентифицированным. Используемый токен удаляется из база данных. Создается новый токен, хранятся в базе данных с именем пользователя, и выдается пользователю через новый логин печенье. 2. Если пара отсутствует, файл cookie для входа игнорируется.
- Пользователи, прошедшие проверку подлинности только через этот механизм, не допускается доступ к определенным защищенная информация или функции таких как смена пароля, просмотр личная идентификация информации или тратить деньги. Чтобы выполнить эти операции, пользователь должен сначала успешно подать нормальный имя пользователя/пароль.
- Поскольку этот подход позволяет пользователю иметь несколько запомненных логины из разных браузеров или компьютеров, предусмотрен механизм пользователь должен стереть все запомненные logins за одну операцию.
Еще одна статья, которая повышает безопасность этих идей в Улучшенная передовая практика cookie для постоянных пользователей
Если вы будете следовать практике в этих статьях, вы не ошибетесь!