Как разлогинить пользователя по id?
Здравствуйте. Делаю небольшой казалось бы банальный функционал, но один нюанс заставил меня хорошо подумать, и решения я так и не смог найти.
Суть вопроса отражена в названии заметки. Нужно как-то разлогинить пользователя по иду. Зачем? Допустим у меня есть менеджер пароль, который я дал своему сотруднику. А через какое-то время поменял этого самого сотрудника, поменял пароль и дал новый пароль. А мой предыдущий сотрудник все еще авторизован в админке.
Мне старого сотрудника нужно принудительно разлогинить. Это можно сделать программно?
В ручном режиме я могу удалить пользователя, и создать нового
Либо в админке нажать «завершить все сеансы»
А программно? Надеялся что в modx_user_attributes будет достаточного удаления sessionid, но не получилось, пользователя не разлогинит.
Подобное тоже не получилось…
Суть вопроса отражена в названии заметки. Нужно как-то разлогинить пользователя по иду. Зачем? Допустим у меня есть менеджер пароль, который я дал своему сотруднику. А через какое-то время поменял этого самого сотрудника, поменял пароль и дал новый пароль. А мой предыдущий сотрудник все еще авторизован в админке.
Мне старого сотрудника нужно принудительно разлогинить. Это можно сделать программно?
В ручном режиме я могу удалить пользователя, и создать нового
Либо в админке нажать «завершить все сеансы»
А программно? Надеялся что в modx_user_attributes будет достаточного удаления sessionid, но не получилось, пользователя не разлогинит.
Подобное тоже не получилось…
Комментарии: 14
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
но не факт) может только для текущего сработает…
https://modx.pro/search?query=разлогинить+пользователя
Грубо говоря, я могу сделать так, что вас (и только вас) сейчас выкинет с modx.pro? Разумеется вы запросто можете еще раз авторизоваться по своей связке логин \ пароль.
Кстати, вопрос на самом деле достаточно часто возникает и актуален для любого более-менее серьёзного сайта.
Например, пользователь может менять группу. А от группы зависит разное, например цена на сайте. Бывают таки ситуации, когда желательно бы принудительно завершить сессию.
Банально отвечать на однообразные вопросы «Я вот сейчас на сайте! Почему вы мне дали скидку, а я её не вижу?» — тяжко (то, что необходимость переавторизации везде прописана — «всем как всегда»). И вот тут-то как раз удобно при смене группы выбрасывать с морды заставляя перелогиниваться с новыми правами.
Первый озвучили, проверять этого пользователя, он при любом раскладе обратится к php.
Второй это сессию удалить, она хранится либо в базе modx prefix_session либо в файлах сессиий php.
yadi.sk/i/DJM-iVZmFWnMiA — это id пользователя
Вообще «Завершить все сеансы» в помощь, все кто был разлогиняться, кому надо авторизуются. Полюбому на сайте не вечное хранение сессий так что каждую неделю этим занимаются