Why authentication Ticket expires

Ask a Question related to ASP.NET Security, Design and Development.

  1. #1

    Default Why authentication Ticket expires

    Can anybody tells if I'm doing something wrong in this code
    and why the user authentication ticket always expires 30
    minutes later, even though I set the cookie expiration
    date to the maximum value, and if I'm reading the cookie
    back the right way ?


    Dim myTicket As New FormsAuthenticationTicket(1, _
    myUser_, _
    DateTime.Now, _
    DateTime.Now.AddMinutes(30), _
    myCheckbox.Checked, _
    myUserData, _
    FormsAuthentication.FormsCookiePath)

    Dim hash As String = FormsAuthentication.Encrypt(myTicket)
    Dim myCookie As HttpCookie
    =New HttpCookie(FormsAuthentication.FormsCookieName, hash)

    If (myTicket.IsPersistent) Then myCookie.Expires=
    DateTime.MaxValue

    Response.Cookies.Add(myCookie)
    Dim url As String = FormsAuthentication.GetRedirectUrl
    (myUser, true)
    Response.Redirect(url)



    'THEN I READ THE COOKIE IN THE Global.asax FILE:
    If (Not (HttpContext.Current.User Is Nothing)) Then
    If (HttpContext.Current.User.Identity.IsAuthenticated ) Then
    If (HttpContext.Current.User.Identity.AuthenticationT ype
    = "Forms") Then

    Dim myID As System.Web.Security.FormsIdentity =
    HttpContext.Current.User.Identity
    Dim myTicket As
    System.Web.Security.FormsAuthenticationTicket = myID.Ticket

    Dim userData As String = myTicket.UserData
    Dim myRoles As String() = Split (userData, ",")
    HttpContext.Current.User = New
    System.Security.Principal.GenericPrincipal(myID, myRoles)
    End If
    End If
    End If


    Tony Guest

  2. Similar Questions and Discussions

    1. Form Authentication Ticket
      I've read some books and online articles on how to implement form authentication. Some taught me just to do...
    2. Encryption of Authentication Ticket
      i have a question regarding the encryption of an Authentication Ticket under FormsAuthentication. Can anyone tell me what type of encryption is used...
    3. Change authentication ticket value at run time?
      Hi, what am I doing wrong ? there is 2 levels of user accessing the application:'Admin' and 'NoneAdmin'. I'm using role based authentication. ...
    4. Authentication ticket, cookieless, forms authentication?
      Hi. I want to use Forms Authentication, cookieless. The issue is setting the Authentication Ticket without using cookies (!) That is, the...
    5. Custom Authentication Ticket
      James, I found your C code and tutorial about this. I attempted to convert it to VB as follows but could you possibly tell me why the code segment...
  3. #2

    Default RE: Why authentication Ticket expires

    Hi Tony,

    In the Constructor of FormsAuthenticationTicket, you have specify the
    expiration date:

    DateTime.Now, _
    DateTime.Now.AddMinutes(30),

    If you change it to:

    DateTime.Now.AddMinutes(60),

    Will the expire date be set to 60 minutes?

    Luke
    Microsoft Online Support

    Get Secure! [url]www.microsoft.com/security[/url]
    (This posting is provided "AS IS", with no warranties, and confers no
    rights.)




    MSFT Guest

  4. #3

    Default RE: Why authentication Ticket expires

    Hi Luke,
    when I set the Ticket expiration time to :
    DateTime.Now.AddMinutes(30)
    and then later I set the Cookie expiration time to the
    maximum value , isn't that suppose to overwite the
    expiration time for the Ticket set in the first statement ?

    What I'm doing basically is:
    create the ticket and set its expiration time to 30 minutes

    then I check if the user checked the Checkbox(remember my
    password) and reset the expiration time to the max value.
    If (myTicket.IsPersistent) Then taskCookie.Expires =
    DateTime.MaxValue


    >-----Original Message-----
    >Hi Tony,
    >
    >In the Constructor of FormsAuthenticationTicket, you have
    specify the
    >expiration date:
    >
    > DateTime.Now, _
    >DateTime.Now.AddMinutes(30),
    >
    >If you change it to:
    >
    >DateTime.Now.AddMinutes(60),
    >
    >Will the expire date be set to 60 minutes?
    >
    >Luke
    >Microsoft Online Support
    >
    >Get Secure! [url]www.microsoft.com/security[/url]
    >(This posting is provided "AS IS", with no warranties,
    and confers no
    >rights.)
    >
    >
    >
    >
    >.
    >
    tony Guest

  5. #4

    Default RE: Why authentication Ticket expires

    Hi Tony,

    It won't overwite the expiration time in this way. You may create
    FormsAuthenticationTicket object with different parameters based on the
    myCheckbox.Checked.

    Luke
    Microsoft Online Support

    Get Secure! [url]www.microsoft.com/security[/url]
    (This posting is provided "AS IS", with no warranties, and confers no
    rights.)

    MSFT Guest

Posting Permissions

  • You may not post new threads
  • You may post replies
  • You may not post attachments
  • You may not edit your posts

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139