-1

How to implement keep me logged in asp.net using login control and membership in asp.net

Arul Madhavan
  • 29
  • 1
  • 1

2 Answers2

1

By adding a checkbox..

And if it's checked you have to create a cookie with authentication and if it's not checked you have to put it in session

http://msdn.microsoft.com/en-us/library/system.web.sessionstate.httpsessionstate.aspx

Another way is to implement a cookie that's not persistent if it's unchecked like that:

int timeout = rememberMe ? 525600 : 30; // Timeout in minutes, 525600 = 365 days.
var ticket = new FormsAuthenticationTicket(userName, rememberMe, timeout);
string encrypted = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
cookie.Expires = System.DateTime.Now.AddMinutes(timeout);
cookie.HttpOnly = true; // cookie not available in javascript.
Response.Cookies.Add(cookie);
Joan Caron
  • 1,969
  • 18
  • 21
0

First you need to create Cookie on login button click as follows and Store the Login Detail in it

protected void btnLogin_Click(object sender, System.EventArgs e)
{
    string username = txtUsername.Text;
    string Password = txtPassword.Text;

    // Create Cookie and Store the Login Detail in it if check box is checked
    if ((CheckBox1.Checked == true)) {
        HttpCookie mycookie = new HttpCookie("LoginDetail");
        mycookie.Values("Username") = txtUsername.Text.Trim();
        mycookie.Values("Password") = txtPassword.Text.Trim();
        mycookie.Expires = System.DateTime.Now.AddDays(1);

        Response.Cookies.Add(mycookie);
    }    
    Response.Redirect("Default2.aspx");
}

then check if cookie exists (is remember me checked), if yes fill the details as follows-

protected void Page_Load(object sender, System.EventArgs e)
{
    //check if cookie exist then login page from 
    if ((Response.Cookies("LoginDetail") != null)) {    
        //Username 
        string uname =                     Response.Cookies("LoginDetail").Values("Username").ToString();
        string pass = Response.Cookies("LoginDetail").Values("Username").ToString();


    Response.Redirect("Default2.aspx");
    }

}
Microsoft DN
  • 9,706
  • 10
  • 51
  • 71
  • i'm getting on the string uname the error object reference not set to an instance of an object what shall i do? – User7291 Oct 04 '13 at 13:44
  • 7
    Would you really store the username and password in the cookie, I think this is a bad idea. – Aki Jan 21 '16 at 15:15