Как сделать функцию «выйти из всех» с помощью файлов cookie HttpOnly? - PullRequest
0 голосов
/ 14 июля 2020

Есть ли способ удалить или истечь httpOnly cook ie, хранящийся в клиенте, при обращении к серверу из другого клиента (например, из двух разных браузеров)?

Я хочу создать «выход из системы» Кнопка, которая выполняет выход пользователя из системы на каждом устройстве, к настоящему времени я сохраняю файлы cookie в базе данных и удаляю их из базы данных, когда пользователь нажимает кнопку «Выйти из системы», а затем я проверяю подлинность, только если повар ie хранится в база данных. Достаточно ли этого подхода? Есть ли у него проблемы с безопасностью?

1 Ответ

0 голосов
/ 14 июля 2020

Вы не можете удалить куки-файлы только HTTP без запроса от браузера, в котором они есть. Файлы cookie только для HTTP можно изменить только с помощью заголовка Set-Cookie.

К настоящему моменту я сохраняю файлы cookie в базе данных и удаляю их из базы данных, когда пользователь нажимает кнопку «выйти из системы», а затем Я аутентифицирую, только если повар ie хранится в базе данных. Достаточно ли этого подхода? Есть ли проблемы с безопасностью?

Это зависит от того, как вы их создаете. Если вы используете CSPRNG для генерации случайного токена, этот подход безопасен и рекомендуется, потому что если злоумышленник получит доступ к компьютеру, с которого пользователь вошел в систему, пользователь может отозвать токен (при условии, что пароль нельзя изменить с помощью токен).

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