سلام دوستان
می خام بدونم که وقتی ticket ساخته شد و پارامتر persists راtrueست کردیم دقیقا چی می شه
ticket که timeoutبراش درwebconfigست شده این دو دو تاcookieهستند رابطه این دو را از عمق درک نمیکنم
سلام دوستان
می خام بدونم که وقتی 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