Имитация пользователя и возврат к администратору

:bookmark: Это руководство объясняет, как в Discourse войти в систему от имени пользователя и вернуться к своей учетной записи администратора. Это полезно, когда необходимо устранить неполадки, с которыми столкнулся конкретный пользователь, или проверить его права доступа.>

:person_raising_hand: Требуемый уровень пользователя: Администратор

Администратор при необходимости может выбрать вход в систему от имени другого пользователя. Это может быть полезно, если участник сталкивается с необычным поведением системы или если нужно проверить его права доступа. Вход от имени другого пользователя имитирует ситуацию, когда вы вошли в систему как этот пользователь. Данная документация проведет вас через процесс входа от имени пользователя как администратора и объяснит, как вернуться к учетной записи администратора.

Вход от имени пользователя

  1. Перейдите в раздел Администрирование боковой панели и выберите Пользователи.

  2. Найдите и выберите профиль пользователя, от имени которого вы хотите войти.

  3. Нажмите на Администрирование в правом верхнем углу.

  4. Внизу выберите кнопку Impersonate (Войти от имени)
    image

    После входа от имени пользователя вы больше не будете авторизованы как администратор. Вы увидите интерфейс Discourse точно так же, как и этот пользователь.

:warning: Вход от имени пользователя не является прозрачным — это создает запись о посещении для этого пользователя и сбрасывает любые флаги уведомлений, на которые было реагировано. Рекомендуется сообщить пользователю о том, что был выполнен вход от его имени.

Завершение сеанса входа от имени пользователя

Способ 1, подходит для редкого использования:

Чтобы прекратить вход от имени пользователя и вернуться к своей учетной записи администратора, просто выйдите из учетной записи пользователя, от имени которого вы вошли, и снова войдите как администратор.

:information_source: Вход и имитация в приватном/инкогнито окне избавляет от необходимости снова входить в систему в основной сессии браузера. Просто закройте окно инкогнито, и всё готово!

Способ 2, рекомендуется при частом входе от имени пользователей

Настройка impersonate_without_logout, если она включена, отображает постоянный баннер в верхней части интерфейса во время входа от имени пользователя, с кнопкой для немедленного завершения сеанса и возврата к учетной записи администратора.

image

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

Кроме того, скрытая настройка сайта experimental_impersonation_time_limit_minutes может использоваться для определения максимальной продолжительности сеанса входа от имени пользователя (по умолчанию: 15 минут). Когда этот лимит времени будет достигнут, сеанс автоматически завершится, добавляя дополнительный уровень безопасности.

Включение impersonate_without_logout

Рекомендуемый способ включения этой функции — через Администрирование → Предстоящие изменения (/admin/config/upcoming-changes), где его можно включить для всего персонала или для конкретных групп.

Для сайтов с самостоятельным размещением его также можно включить через консоль Rails:

SiteSetting.impersonate_without_logout = true
SiteSetting.experimental_impersonation_time_limit_minutes = 15
40 лайков

Стоит отметить, что имитация действий пользователя не является прозрачной — это создает запись о посещении от имени этого пользователя и сбрасывает все флаги уведомлений, которые были обработаны. Вероятно, лучше уведомить реального пользователя о том, что это происходит.

4 лайка

Я тоже столкнулся с этой проблемой. Можем ли мы хотя бы добавить диалог подтверждения для кнопки «Имперсонация»? В настоящее время имперсонация начинается сразу же, без предупреждения пользователя о подводных камнях, особенно о том, что создается запись о посещении с авторизацией.

Другие кнопки в его окрестностях (например, «Удалить пользователя») имеют диалог подтверждения. Как пользователь, я ожидаю, что кнопка «Имперсонация» откроет диалог, как и другие.

image

6 лайков

Я даже не обратил внимания на отсутствие диалога подтверждения, но да, это было бы хорошим местом, чтобы предупредить, что вы собираетесь стать этим пользователем и оставить следы — а не просто бродить за кулисами без последствий.

5 лайков

Я думаю, что сейчас вы можете включить настройку по адресу /admin/config/upcoming-changes.

2 лайка