帐号锁定
Membership特性自动地跟踪用户重试密码的次数。在检索密码或重置密码的时候,它也跟踪密码重试的次数。下面的例子演示了自动的帐号锁定能力,以及如何取消帐号锁定。首先使用前面的"建立新用户"示例创建一个新帐号。接着,点击下方的按钮运行"帐号登出"示例。登录页面显示了显示了为了锁定帐号需要重试的失败次数。在登录页面上,使用你建立的第一个帐号并输入错误的密码。请注意,在重试的失败次数到了之后,如果你使用了正确的密码,也不能登录了--这是因为在重试失败的次数到了一定的数量之后,Membership特性自动地锁定的帐号。为了解除该帐号的锁定,请使用你建立的第二个帐号登录。显示的页面与前面的显示用户属性的例子很相似。但是,这个页面允许你在页面底部输入任意的用户名称。请输入被锁定的帐号并回车。DetailsView控件会刷新并显示该用户的信息。请注意,标识锁定状态的检查框IsLockedOut是选中的。LastLockoutDate也被更新了,它显示了用户被锁定的日期。点击页面底部的"解锁"按钮来解除当前显示的用户的锁。它调用了MembershipUser实例的UnlockUser方法,解除了用户的锁。在解除用户的锁之后,IsLockedOut检查框被清除了,LastLockoutDate属性也被重置了。点击页面底部的登出链接。现在尝试用第一个帐号登录。现在可以再次成功登录了。 数据挖掘研究院
| Sub btnUnlockUser_Click(ByVal sender As Object, ByVal e As System.EventArgs) Dim memUser as MembershipUser = Membership.GetUser(txtUserName.Text) If (Not memUser is Nothing And memUser.IsLockedOut = true) memUser.UnlockUser() End If "刷新被选中用户的信息 DetailsView1.DataBind() End Sub |
删除用户
你可以使用Membership.DeleteUser方法删除用户。下面的例子演示了如何使用窗体认证删除当前登录的用户并让该用户登出。
| <script runat="server"> Sub btnDeleteCurrentUser_Click(ByVal sender As Object, ByVal e As System.EventArgs) If (Membership.DeleteUser(User.Identity.Name)) Then FormsAuthentication.SignOut() 数据挖掘研究院 Roles.DeleteCookie() Response.Redirect("~/CreatingUsers.aspx") Else lblResult.Visible = True lblResult.Text = "The Membership user was not deleted." End If End Sub </script> |

