Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

chặn đăng nhập sau X lần thử không thành công

Bạn cần cái được gọi là Cửa sổ thử mật khẩu.

Về cơ bản có 2 trường trong cơ sở dữ liệu, một LastPasswordAttempt (datetime) và PasswordAttemptCount (int)

Sau đó, trên mỗi lần đăng nhập, hãy kiểm tra thời điểm LastPasswordAttempt cuối cùng xảy ra và nếu nó đã diễn ra trong 10 phút vừa qua - hãy tăng PasswordAttemptCount, nếu không hãy đặt lại nó về 0 (hoặc 1 vì chúng vừa bị lỗi).

Theo logic tương tự, hãy kiểm tra xem PasswordAttemptCount có bằng 5 hay nhiều hơn không, nếu có - hãy từ chối quyền truy cập của người dùng. Bạn có thể có trường thứ 3 khóa chúng trong vài giờ hoặc một ngày.

tức là CanLoginAfter (ngày giờ) mà bạn có thể đặt thành một ngày kể từ lần thử mật khẩu cuối cùng.

Hy vọng điều này sẽ giúp ích



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql.Data.MySqlClient.MySqlException:Hết thời gian chờ

  2. Làm cách nào để các danh mục và danh mục con cho WooCommerce được lưu trong DB?

  3. Vấn đề chèn ký tự MySQL UTF-8

  4. ĐẶT HÀNG THEO id hoặc date_crated để hiển thị kết quả mới nhất?

  5. Đếm số lần xuất hiện của một chuỗi trong trường VARCHAR?