CodeIgniter Auth System - PullRequest
       8

CodeIgniter Auth System

2 голосов
/ 23 августа 2009

Я написал свою собственную модель для обработки аутентификации, но мне было просто интересно, как бы я реализовал функцию «Запомнить меня»?

Для входа в систему я просто установил следующие данные пользователя: UserID (int), LoggedIn (bool)

Ответы [ 2 ]

5 голосов
/ 23 августа 2009

«Помни меня» реализуется через куки.

Ваш файл cookie должен иметь форму «RememberMe = userid: [что-то-подтверждение-аутентификация]» *

Таким образом, сложная часть состоит в том, чтобы получить «что-то подтверждающее-аутентификацию». Это лучше всего реализовать как:

 sha256(salt + userid)

'Соль' - это серия случайных символов, сгенерированных против Пользователя и хранящихся рядом с ним в базе данных.

Затем вы можете подтвердить, что когда это существует (у вас есть данные для вычисления этого хэша на сервере, поэтому вы делаете это), вы помечаете пользователя как вошедшего в систему.

Для дальнейшего повышения безопасности вы можете также зашифровать этот компонент cookie с помощью aes256 и расшифровать перед попыткой проверить хеш.

0 голосов
/ 23 августа 2009

Зашифруйте идентификатор пользователя и состояние входа в систему и сохраните их в файле cookie.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...