2009-12-09 32 views
8

Chúng tôi đang sử dụng các tính năng thành viên ASP.net tiêu chuẩn đi kèm với asp.net.Asp.net Membership - Tài khoản bị khóa

Một số tài khoản nhất định trong cơ sở dữ liệu thành viên của chúng tôi có cờ "Đã khóa" được đặt thành true - khi nào/điều này xảy ra như thế nào?

+0

Làm cách nào để mở khóa một tài khoản? – Zapnologica

Trả lời

12

Sau số lần đăng nhập không thành công (maxInvalidPasswordAttempts, mặc định = 5) trong một khoảng thời gian có thể cấu hình (passwordAttemptWindow, default = 10 minutes), tài khoản sẽ bị khóa.

thấy here cho thuộc tính cấu hình thành viên liên quan

+0

Có nơi nào tôi có thể thay đổi cài đặt này không? Cảm ơn! – stringo0

+0

Nó thường được cấu hình trong web.config –

3

Khi ai đó cố gắng đăng nhập 5 lần (hoặc bất cứ điều gì "maxInvalidPasswordAttempts" được thiết lập để) với mật khẩu sai tài khoản sẽ bị khóa ra ...

để tránh này trong tương lai thay đổi maxInvalidPasswordAttempts thuộc tính trong web.config

dụ:

<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15"> 
<providers> 
    <clear /> 
    <add 
    name="SqlProvider" 
    .... 
    maxInvalidPasswordAttempts="the new value here " 
    /> 
</providers> 

4

These 4 guys đã làm một công việc tuyệt vời của việc giải thích sâu các thành viên asp.net kiểm soát

<system.web> 
... authentication & authorization settings ... 

<membership defaultProvider="CustomizedProvider"> 
    <providers> 
    <add name="CustomizedProvider" 
      type="System.Web.Security.SqlMembershipProvider" 
      connectionStringName="MyDB" 
      applicationName="MyProject" 
      minRequiredPasswordLength="5" 
      minRequiredNonalphanumericCharacters="0" /> 
    </providers> 
</membership> 

cơ bản thêm nhà cung cấp của bạn và sau đó thiết lập các thiết lập theo cách bạn muốn họ

+0

Cảm ơn, liên kết này chắc chắn sẽ hữu ích! – stringo0

2

Khóa tài khoản là một tính năng của SqlMembershipProvider cung cấp một biện pháp bảo vệ chống lại việc đoán mật khẩu.

Nhìn vào this page bạn có thể thấy rằng bảng aspnet_Membership có IsLockedOut, LastLockoutDate, FailedPasswordAttemptCount, FailedPasswordAnswer-AttemptCount. Bằng cách xem lại bảng này và các cột này, bạn sẽ có thể xác định ai đang đăng nhập thất bại, khi họ không đăng nhập được và họ đã thất bại bao nhiêu lần.

Số đếm thực tế cho số lần thử đăng nhập có thể gây ra trong phần của web.config. Bạn có thể đọc thêm về account locking here.

Các vấn đề liên quan