sql >> Databáze >  >> RDS >> Mysql

blokování přihlášení po X neúspěšných pokusech

Potřebujete to, čemu se říká okno pokusu o heslo.

V podstatě 2 pole v databázi, jedno LastPasswordAttempt (datetime) a PasswordAttemptCount (int)

Poté při každém přihlášení zkontrolujte, kdy došlo k poslednímu pokusu o LastPasswordAttempt a zda to bylo za posledních řekněme 10 minut – zvyšte počet PasswordAttemptCount, jinak jej resetujte na 0 (nebo 1, protože právě selhaly).

Ve stejné logice zkontrolujte, zda je PasswordAttemptCount roven řekněme 5 nebo více, pokud ano - odepřete přístup uživateli. Můžete mít 3. pole, které je na několik hodin nebo den uzamkne.

tj. CanLoginAfter(datetime), které můžete nastavit na den od posledního pokusu o heslo.

Doufám, že to pomůže



  1. O výhodách tříděných cest

  2. Připojení jednoho stolu k mnoha stolům

  3. mysql - po vložení ignorovat získat primární klíč

  4. Jak napsat tento složitý dotaz v codeigniter?