Текущее поведение таково: при имперсонации аккаунта пользователя дата последнего посещения меняется. Это поведение сбивает с толку других пользователей и наших сотрудников, так как они предполагают, что пользователь действительно был онлайн в указанную дату/время.
Мое предложение — не учитывать имперсонацию при обновлении даты последнего посещения.
Я вынужден с этим не согласиться. Мне известны несколько форумов из моих сообществ, в которых участвовали я и мои друзья, где администраторы этих форумов злонамеренно использовали функцию «имитация», чтобы попытаться подставить людей.
Сотрудники должны иметь доступ к журналам действий персонала, которые показывают, когда и кто имитировал учётную запись. Вы должны ознакомить с этим всех членов своей команды.
Администраторы в любом случае всегда могут сбросить эту дату в базе данных или предотвратить обновление даты последнего посещения с помощью плагина. Если вы не доверяете администраторам, то ничего не сможете сделать.
Одна вещь, которая, как мне кажется, могла бы действительно помочь, — это отправка пользователю сообщения о том, что его личность была подделана. Да, это можно обойти создателям плагинов, но большинство злонамеренных администраторов — обычно подростки, которых пугают такие вещи, или взрослые, которые не смогут позволить себе нанять кого-то для написания такого плагина.
Краткое дополнение по нашему случаю использования.
Из-за специфики нашей темы пользователи очень обеспокоены конфиденциальностью. Поэтому, когда давний активный пользователь, который «когда-то был» активным, внезапно появляется снова и у него отображается свежая дата «Последний раз в сети» из-за того, что администратор выдавал себя за него, некоторые из наших пользователей либо обеспокоены, либо немного сбиты с толку…
Если вы используете новую функцию имперсонации (включается установкой скрытого параметра сайта experimental_impersonation в значение true), то временная метка last_seen_at больше не будет изменяться при имперсонации пользователя.
Мы всё ещё находимся в процессе планирования внедрения новой функции имперсонации на хостинг-форумы Discourse.
Похоже, цель новой функции имитации — снизить её влияние, но на данный момент затронуты не только поля last_seen_at. Насколько я понимаю, при имитации вы становитесь этим пользователем.
Нажали на ожидающее уведомление? Теперь оно помечено как просмотренное.
Открыли непрочитанный пост? Теперь он помечен как прочитанный.
Учитывая это, я бы использовал эту функцию только для устранения неполадок с ведома пользователя. Я не возражал бы, если бы пользователи получали уведомления и журнал активности за сессию имитации.
Хорошо, но когда мой последний IP-адрес остаётся там публичным, видит ли это пользователь? Как администратор, когда я имитирую любого пользователя, мой IP-адрес «утекает», или я ошибаюсь?