webForumDet fria alternativet

FormsAuthenticationTicket i Asp.Net 2.0

0 svar · 280 visningar · startad av Arne

ArneMedlem sedan maj 2000267 inlägg
#1

Är det omöjligt att förlänga Cookie Expiration i FormsAuthenticationTicket om man använder Asp.Net 2.0 och IsPersistent. Tidigare gick det bra att ställa annat värde i Asp.Net 1.1
Tydligen är det gjort om vid 2.0
Har provat att sätta timeout i Web.Config längre en 30 minuter, lägga till DateTime.Now.AddYears(1) i FormsAuthenticationTicket men går inte att få Cookie Expiration över 30 minuter.
ticket.Expired visar annat datum (mer en 30 min) och ticket.IsPersistent visar true.
Men stänger jag ner sidan och öppnar den igen efter 30 minuter får jag logga in igen.
Jag kan ändra Expiration under 30 minuter och det funkar....

Kan någon bekräfta om det är så eller om jag gör något fel eller tips på vad jag kan försöka med:

Koden jag använder nedan

Dim MyTicket As FormsAuthenticationTicket = New FormsAuthenticationTicket( _
1, _
namn, _
DateTime.Now(), _
DateTime.Now.AddYears(1), _
CbRemember.Checked, _
userData, _
FormsAuthentication.FormsCookiePath)

Dim encTicket As String = FormsAuthentication.Encrypt(MyTicket)

Dim MyCookie As HttpCookie
MyCookie = New HttpCookie(FormsAuthentication.FormsCookieName(), encTicket)

If CbRemember.Checked Then MyCookie.Expires = MyTicket.Expiration
MyCookie.Path = FormsAuthentication.FormsCookiePath()
Response.Cookies.Add(MyCookie)

Dim strRedirect As String
strRedirect = Request("ReturnURL")

If strRedirect <> "" Then
	Response.Redirect(strRedirect, True)
Else
	strRedirect = "../default.aspx"
	Response.Redirect(strRedirect, True)
End If
263 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
131 ms — hämta statistik (db)
130 ms — hämta tråd, inlägg och bilagor (db)