manivineet
asked on
cannot login from firefox- asp.net login functionality
This is so freaking strange,
When I try to login using Firefox, I get a default error message (which I have set in the _LoginError sub)
the thing is the when I login using a particular username(in my case 'test'), i can login from IE but not firefox
All other logins work fine in both browsers
have tried rebooting the PC, clearing cookies, removing temp asp.net files.
following is the code, i use this code to use the remember me funcitonality
p.s. safari for windows doesnt throw this problem, only Firefox
When I try to login using Firefox, I get a default error message (which I have set in the _LoginError sub)
the thing is the when I login using a particular username(in my case 'test'), i can login from IE but not firefox
All other logins work fine in both browsers
have tried rebooting the PC, clearing cookies, removing temp asp.net files.
following is the code, i use this code to use the remember me funcitonality
p.s. safari for windows doesnt throw this problem, only Firefox
Private Sub portalLogin_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles portalLogin.Init
If Not IsPostBack Then
If Request.Cookies("myCookie") IsNot Nothing Then
Dim cookie As HttpCookie = Request.Cookies.[Get]("myCookie")
portalLogin.UserName = cookie.Values("username")
portalLogin.RememberMeSet = (Not [String].IsNullOrEmpty(portalLogin.UserName))
End If
Dim txtUser As TextBox = TryCast(portalLogin.FindControl("UserName"), TextBox)
If txtUser IsNot Nothing Then
'Me.SetFocus(txtUser)
End If
End If
' Note this
Response.Cache.SetNoStore()
End Sub
'redirect the user to the HOME page when he logs in
Private Sub portalLogin_LoggedIn(ByVal sender As Object, ByVal e As System.EventArgs) Handles portalLogin.LoggedIn
'get user name
Dim usern As String = portalLogin.UserName.ToString
Dim myCookie As New HttpCookie("myCookie")
Dim remember As Boolean = portalLogin.RememberMeSet
If remember Then
Dim persistDays As Int32 = 60 'cookie set toe expire in 60 days
myCookie.Values.Add("username", portalLogin.UserName)
myCookie.Expires = DateTime.Now.AddDays(persistDays)
'you can add years and months too here
Else
myCookie.Values.Add("username", String.Empty)
' overwrite empty string is safest
myCookie.Expires = DateTime.Now.AddMinutes(5)
'you can add years and months too here
End If
Response.Cookies.Add(myCookie)
End Sub
Protected Sub portalLogin_LoginError(ByVal sender As Object, ByVal e As System.EventArgs) Handles portalLogin.LoginError
'determine why the user could not login...
portalLogin.FailureText = "Your login attempt was not sucessful. Please try again"
'does that user account Exist ?
Dim usrInfo As MembershipUser = Membership.GetUser(portalLogin.UserName)
If usrInfo IsNot Nothing Then
'is this user Locked out?
If usrInfo.IsLockedOut Then
portalLogin.FailureText = "Your account has been locked out because of too many invalid login attempts. Please contact administrator to re-activate it"
'has user been Approved yet?
ElseIf Not usrInfo.IsApproved Then
portalLogin.FailureText = "Your account has not been approved yet. You cannot login until an administrator has approved your account"
End If
End If
End Sub
the "test" could be a keyword within firefox or there could be something special about it.
I can't reproduce, is the OnAuthenticate event handler getting called in FireFox for "test"? If you set e.Authenticated to true for test does it work?
Protected Sub portalLogin_OnAuthenticate(ByVal sender As Object, ByVal e As AuthenticateEventArgs) Handles portalLogin.Authenticate
e.Authenticated = Membership.ValidateUser(portalLogin.UserName, portalLogin.Password)
End Sub
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.