Я видел, что у codeigniter есть возможность сохранять значения сеанса в базе данных.
Он говорит, что сохранение сессии в базе данных является хорошей практикой безопасности.
Но я думаю, что сохранение информации сеанса в базе данных помогает повысить производительность.
Они сохраняют только несколько элементов сеанса, например:
CREATE TABLE IF NOT EXISTS 'ci_sessions' (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text NOT NULL,
PRIMARY KEY (session_id)
);
Но если сайт использует больше переменных сеанса, таких как имя пользователя, последнее время входа и т.д., я могу сохранить их в базе данных и использовать их в программе.
Нужно ли добавлять эти столбцы в одну и ту же таблицу? Я думаю, что сохранение информации о сеансе в базе данных помогает только сократить использование памяти веб-серверов (ОЗУ). Может ли кто-нибудь объяснить, в каком смысле это повышает безопасность.