Sim, essa funcionalidade pode ser problemática, mas às vezes não há outra maneira, portanto pode ser necessária.
Alguns exemplos:
- No Unix / Linux, essa funcionalidade existe (
su - <username>
que fornece o mesmo resultado que o logon desse usuário, mas não requer senha para root)
- o aplicativo em que trabalho também possui isso, e é essencial para depurar problemas nas configurações pessoais de um usuário (das quais nosso aplicativo possui muitos)
Conforme indicado, se configurações complexas dependem do usuário conectado (vars do ambiente, caminhos, configurações pessoais em um aplicativo), geralmente não há outra maneira prática de depurar o problema do usuário.
Quanto ao registro / auditoria: é claro que o uso dessa funcionalidade deve ser registrado. Fora isso, você precisará confiar no seu administrador para não abusar dele. Mas isso é válido para administradores em geral.
Se você precisar restringir mais seus administradores, precisará de algum tipo de sistema MAC (controle de acesso obrigatório), sem um administrador "verdadeiro". Isso é possível, mas muito mais complicado, por isso é uma troca.