سلام دوستان
می خام بدونم که وقتی ticket ساخته شد و پارامتر persists راtrueست کردیم دقیقا چی می شه
ticket که timeoutبراش درwebconfigست شده این دو دو تاcookieهستند رابطه این دو را از عمق درک نمیکنم:گیج::خجالت:
Printable View
سلام دوستان
می خام بدونم که وقتی ticket ساخته شد و پارامتر persists راtrueست کردیم دقیقا چی می شه
ticket که timeoutبراش درwebconfigست شده این دو دو تاcookieهستند رابطه این دو را از عمق درک نمیکنم:گیج::خجالت:
یعنی اینها در اصل دو تا کوکی هستند و persist=true تایم اوت بلیط رو overwriteنمی کنه؟:لبخند:
نه. یک کوکی ایجاد می شه. زمان expire اون وابسته می شه به ticket:
این نمونه رو ببینید:
DateTime expiration = new DateTime();
expiration = DateTime.Now.AddMinutes(20);
if (remember)
expiration = DateTime.Now.AddDays(14);
FormsAuthenticationTicket Ticket = new FormsAuthenticationTicket(1, ud.Name, DateTime.Now, expiration, true, userData, FormsAuthentication.FormsCookiePath);
string encTicket = FormsAuthentication.Encrypt(Ticket);
HttpCookie c = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
if (remember)
c.Expires = Ticket.Expiration;
Response.Cookies.Add(c);
ممنون از نمونه کد زیبای شما یک سوال برام پیش اومده این هستش که
مثلا سایت برنامه نویس من دکمه Remember را می زنم و وارد می شم
اما موقع دانلود بعضی فایلها از من میخاد دوباره وارد بشم
البته میدونم این سایت با PHPاست اما خوب مسئله برام جا نمی افته و همین مثال
من رو به شک انداخت
-یک سئوال دیگه هم دارم این هستش که در پیاده سازی FormsAuthentication بهتر
هست از روش COOKIEاستفاده بشه یا CookieLess(ارسال Ticket از طریق Url)?
در مورد cookie less مقاله زیر رو ببینید:
http://msdn.microsoft.com/en-us/library/aa479315.aspx