По этому вопросу есть много материалов на The Impersonated user should be notified that they are being Impersonated. Я всё ещё согласен с выводами, к которым пришли там. Если кратко: это тупик, администраторы могут всё, и если вы не доверяете администраторам, не назначайте их.
Возможно, стоит рассмотреть другой подход — добавить определённые препятствия для имперсонации:
- добавить всплывающее окно с вопросом «Вы уверены?», напоминающее, что действие будет зафиксировано в логах, и что, если нужно просто что-то протестировать, лучше создать тестового пользователя и удалить его после завершения. Это своего рода обучение в момент необходимости.
- отправлять ссылку для имперсонации по электронной почте (это также позволит войти в систему в отдельном окне), аналогично загрузке резервной копии.
Мне также нравится идея добавить настройку администратора для отключения имперсонации по умолчанию. Это даже не обязательно должна быть скрытая настройка, но наличие такой опции, как, например, для восстановления резервной копии, снизит риск того, что кто-то привыкнет имперсонировать других пользователей или сделает это по ошибке.