Mam witrynę internetową przy użyciu ASP.net ... Używam narzędzia administracyjnego witryny ASP.net dostępnego od Visual Web Developer do dodawania/modyfikowania dostępu użytkownika do strony. Zauważyłem, że jeśli użytkownik zaznaczył pole "Zapamiętaj mnie", aby automatycznie się zalogować, wyłączenie lub usunięcie konta nie ma żadnego efektu, dopóki plik cookie nie zostanie usunięty. Dlaczego to? Czy może istnieć jakaś logika umieszczona w kodzie, który odmówi dostępu lub przekieruje go do komunikatu o błędzie dla wyłączonych lub usuniętych kont?Użytkownik ASP.NET nadal może się logować, jeśli konto jest nieaktywne lub usunięte z bazy danych
jest obecnie to, co mam w moim kod związany ...
Protected Sub Page_Init(sender As Object, e As System.EventArgs) Handles Me.Init
If User.Identity.IsAuthenticated Then
Response.Redirect("~/homepage")
End If
End Sub
Także to jest poniżej sekcji Page_Init ...
Protected Sub LoginUser_LoginError(sender As Object, e As System.EventArgs) Handles LoginUser.LoginError
LoginUser.FailureText = "Invalid Username or Password - Please Try Again"
Dim usrInfo As MembershipUser = Membership.GetUser(LoginUser.UserName)
If usrInfo IsNot Nothing Then
If usrInfo.IsLockedOut Then
LoginUser.FailureText = "Your account has been locked - Contact the system administrator"
ElseIf Not usrInfo.IsApproved Then
LoginUser.FailureText = "Your account is disabled - Contact the system administrator"
End If
End If
End Sub
Dzięki za pomoc!
Oprócz sprawdzania, czy użytkownik 'IsAuthentricated', sprawdź również, czy konto użytkownika jest nadal aktywne. –
Jak sprawdzić, czy użytkownik jest aktywny czy nie? –
Posiada metodę "GetUser". Jeśli użytkownik już nie istnieje, metoda zwróci wartość null. http://msdn.microsoft.com/en-us/library/40w5063z.aspx –