Gestione del ritardo nell'immissione di OTP per la convalida del login

0

C'è un'applicazione, che accetta un ID utente e una password per accedere. La convalida dell'ID e della password viene elaborata da un altro sistema. Ora dopo la convalida della password, l'applicazione genera un One Time Passcode (OTP) e lo invia come SMS o e-mail all'utente.

Questo OTP scade tra 15-30 minuti. Solo quando l'OTP è validato correttamente, l'accesso dell'utente è completo.

Se l'utente ha due dispositivi e inserisce la sua password in un dispositivo, viene generato un OTP. Ma lui non usa l'OTP sul primo dispositivo. Usa il suo secondo dispositivo per accedere di nuovo e inserisce la sua password lì. Poiché è in 15-30 minuti, lo stesso OTP viene generato di nuovo. Ora può accedere a due dispositivi con lo stesso OTP.

Questo scenario sembra essere buono?

Continuando lo scenario, il suo id è bloccato nel frattempo per qualche motivo. Tenta di inserire l'OTP in uno dei due dispositivi. Ora dovremmo consentire il login? Altrimenti dovremmo controllare lo stato di identificazione ogni volta che un OTP viene convalidato?

Allo stesso modo, nell'intervallo di 15-30 minuti, se la password viene modificata tramite l'help desk, dovremmo reimpostare le sessioni esistenti che hanno validato la password, ma sono in attesa dell'OTP? O possiamo consentire l'accesso con la password precedente stessa?

Il problema tecnico qui è che la convalida della password è in un sistema, ma la convalida OTP è in un altro sistema e si escludono a vicenda. Non comunicano tra loro.

È appropriata la procedura di convalida OTP?

    
posta Maheswaran Ravisankar 17.02.2016 - 23:17
fonte

2 risposte

3

Is this OTP validation procedure appropriate?

La tua procedura di convalida sembra per lo più accettabile, ma la tua procedura di generazione sicuramente non lo è.

Since it is within 15-30 minutes, the same OTP is generated again. Does this scenario appear to be good?

Due login non dovrebbero mai produrre lo stesso passcode. Mai.

Quando si tenta un accesso, genera un nuovo codice di accesso . Scadere immediatamente quello vecchio.

Tornando alla validazione, però, non dovresti accettare lo stesso OTP due volte.

Tutte le altre domande, per quanto posso dire, diventano discutibili quando si tiene conto di quanto sopra.

    
risposta data 18.02.2016 - 00:03
fonte
1

Quando si calcolano i valori di OTP, è necessario fare affidamento su standard aperti come HOTP o TOTP in RFC4226 e RFC6238. Nel tuo caso, se vuoi che il valore OTP sia utilizzabile per 15 minuti, devi utilizzare la base eventi HOTP (RFC4226).

Questo è uno scenario tipico gestito da privacyidea . L'inserimento della password corretta attiva l'invio di un SMS in cui è possibile definire il periodo di validità del valore OTP inviato. privacyidea supporta un sacco di tipi di token. Uno è il token SMS . Puoi utilizzare l'API REST per attivare l'SMS.

    
risposta data 18.02.2016 - 19:56
fonte

Leggi altre domande sui tag