Системный cookie для входа в систему, основанный на ssl

Я создал систему входа в систему пользователя и с этой функцией я начинаю сеансы

function sessionStart() {
    $session_name = 'sec_session_id'; // Set a custom session name
    $secure = false; // Set to true if using https.
    $httponly = true; // This stops javascript being able to access the session id. 

    ini_set('session.use_only_cookies', 1); // Forces sessions to only use cookies. 
    $cookieParams = session_get_cookie_params(); // Gets current cookies params.
    session_set_cookie_params($cookieParams["lifetime"], $cookieParams["path"], $cookieParams["domain"], $secure, $httponly); 
    session_name($session_name); // Sets the session name to the one set above.
    session_start(); // Start the php session
    session_regenerate_id(true); // regenerated the session, delete the old one. 
}

Я использую cookie сессий так же, как вы можете видеть в функции, которую я упомянул выше. Я сохраняю эти сессии в memcached для ускорения моей работы. Теперь мне нужно создать cookie, в котором хранятся пользовательские данные. Например, мне нужен идентификатор пользователя, затем я сохраняю идентификатор пользователя в cookie, как это

setcookie('userid','1234',time()+240000)

и после этого мне нужен пароль пользователя и имя пользователя на случай, если пользователь вошел в систему. но я знаю, что не должен хранить пароль в cookie.Если пароль не сохраняется в cookie при сбое нашего сервера из-за использования memcache, мы потеряем всех пользователей session.am я прав? тогда как я должен держать пользователя в системе... пожалуйста, просто объясните. нет необходимости беспокоиться о написании кода.

заранее спасибо

1 ответ

Решение

Я предлагаю вам сохранить данные о клиенте, вошедшие в систему, в базе данных SQL и дать строке SQL случайный хэш соли +, а затем назначить этот хеш cookie. Затем вы просто получаете информацию из базы данных каждый раз.

Другие вопросы по тегам