Credo che la pratica dell'assegnazione top-down della password sia (o fosse) comune nelle distribuzioni militari.
In genere, si stima il tempo medio necessario per la perdita di una password, sebbene un numero qualsiasi di mezzi, alcuni dei quali potrebbero includere:
- Ingegneria sociale
- Forza bruta
- Utenti incuranti che le stanno perdendo
Prenderesti quindi questa stima e imporrà la rigenerazione delle password in una finestra temporale "sicura". I tuoi utenti finali potrebbero odiarti per questo. Tuttavia ha molti vantaggi:
- Puoi collegare più facilmente una password a un utente finale: li hai generati per tutti, quindi perché Bob ha utilizzato la password di Alice quando Bob ha ricevuto una password.
- L'organizzazione può bilanciare esplicitamente il rischio delle proprie password in base alla convenienza dell'utente finale, in particolare variando la durata e la durata della password di conseguenza.
- Diversi sistemi possono richiedere password diverse per lo stesso utente, portando a controlli di accesso di più facile implementazione e una migliore separazione dei problemi. Tuttavia, potresti semplicemente delegare l'autenticazione e l'amp; autorizzazione a uno specifico provider di identità per gli stessi vantaggi.
Tuttavia, devi anche essere in grado di consegnare le password agli utenti in modo sicuro. Questo è sorprendentemente difficile; non puoi certamente inviarli tramite e-mail su Internet, un corriere potrebbe essere corrotto (e può eseguire un DoS rallentando o "perdendo" le chiavi del fiume locale), e così via.
Questo schema probabilmente porterà anche, come notato da The Bear a utenti estremamente ostili. Gli utenti ostili sono un serio rischio per la sicurezza. Possono smettere di usare il sistema per fare il loro lavoro, estraendo i dati dall'applicazione (sicura) per lavorare con esso, il che sconfigge completamente il punto del sistema.
Tutto sommato, per la maggior parte delle applicazioni, non stai proteggendo dati abbastanza sensibili da garantire questo livello di paranoia. Non puoi garantire la consegna sicura delle password, non puoi formare i tuoi utenti e probabilmente non puoi costringerli a usare il tuo sistema. Questo è quasi certamente uno schema orribile per il 99,9999% delle applicazioni.