Принудительное разлогинивание пользователя после смены пароля
Всем привет!
Использую Office для ЛК. Хочу после того, как пользователь сменил пароль — принудительно его разлогинивать на всех устройствах.Насколько мне известно, по умолчанию, office позволяет пользователю перемещаться и совершать действия после смены пароля до следующего входа.
Буду благодарен за любой совет и подсказку. Пока думаю о процессоре $modx->runProcessor('/security/logout') и где его вызывать
Использую Office для ЛК. Хочу после того, как пользователь сменил пароль — принудительно его разлогинивать на всех устройствах.Насколько мне известно, по умолчанию, office позволяет пользователю перемещаться и совершать действия после смены пароля до следующего входа.
Буду благодарен за любой совет и подсказку. Пока думаю о процессоре $modx->runProcessor('/security/logout') и где его вызывать
Комментарии: 4
Насчет внутреннего устройства Office не подскажу, мб там и есть такая возможность.
как идея (сам не проверял) — написать плагин на событие авторизации и при каждой авторизации добавлять в extended-поле user-а текущую id_session.
как идея (сам не проверял) — написать плагин на событие авторизации и при каждой авторизации добавлять в extended-поле user-а текущую id_session.
$extended = $profile->get('extended');
$extended['sess_list'][] = текущий id сессии;
$profile->set('extended', $extended);
$profile->save();
На событие смены пароля доставать из extended-поля все id_session и удалять их из таблицы _session
Вешайте на событие плагина OnUserChangePassword что-то вроде:
$user->endSession();
Office, насколько помню, поддерживает это событие через расширение нативного процессора апдейта юзера.
это затронет только текущего пользователя. Другого пользователя под таким же логином это никак не коснется.
рабочий вариант с записью идентификатора сессии при авторизации/ смене пароля и его проверке при загрузке страницы как предложил толяныч выше.
рабочий вариант с записью идентификатора сессии при авторизации/ смене пароля и его проверке при загрузке страницы как предложил толяныч выше.
К сожалению, да. Решается только костылями.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.