Sì, questa funzionalità può essere problematica, ma a volte non c'è altro modo, quindi potrebbe essere necessario.
Alcuni esempi:
- Su Unix / Linux, questa funzionalità esiste (
su - <username>
, che dà lo stesso risultato dell'accesso come utente, ma non richiede alcuna password per root)
- anche l'applicazione su cui lavoro ha questo, ed è essenziale per il debug dei problemi con le impostazioni personali di un utente (di cui la nostra app ne ha molte)
Come sottolineato, se le impostazioni complesse dipendono dall'utente loggato (vars ambiente, percorsi, impostazioni personali in un'applicazione), spesso non esiste un altro modo pratico per eseguire il debug del problema di un utente.
Per quanto riguarda la registrazione / auditing: l'uso di questa funzionalità dovrebbe ovviamente essere registrato. Oltre a questo, dovrai fidarti del tuo amministratore per non abusarne. Ma questo è valido per gli amministratori in generale.
Se è necessario limitare ulteriormente gli amministratori, è necessario un qualche tipo di sistema MAC (controllo accesso obbligatorio), senza un amministratore "vero". Questo è possibile, ma molto più complicato, quindi è un compromesso.