Да, такая функциональность может быть проблематичной, но иногда нет другого пути, поэтому она может быть необходимой.
Несколько примеров:
- В Unix / Linux эта функциональность существует (
su - <username>
что дает тот же результат, что и вход в систему от имени этого пользователя, но не требует пароля для пользователя root)
- у приложения, над которым я работаю, также есть это, и это важно для устранения проблем с личными настройками пользователя (из которых наше приложение имеет много)
Как уже указывалось, если сложные параметры зависят от пользователя, вошедшего в систему (переменные среды, пути, личные настройки в приложении), часто не существует другого практического способа отладки проблемы пользователя.
Что касается ведения журнала / аудита: использование этой функции, конечно, должно быть зарегистрировано. Кроме этого, вы должны доверять своему администратору, чтобы не злоупотреблять им. Но это действительно для администраторов.
Если вам нужно больше ограничивать своих администраторов, вам нужна какая-то система MAC (обязательного контроля доступа) без «истинного» администратора. Это возможно, но гораздо сложнее, так что это компромисс.