PDA

View Full Version : سوال: expire شدن کوکی در formsauthentication



Vahid_moghaddam
پنج شنبه 07 شهریور 1387, 13:55 عصر
من از کد زیر استفاده می کنم:


FormsAuthenticationTicket Ticket = new FormsAuthenticationTicket(1, userProperties.Name, DateTime.Now, DateTime.Now.AddMinutes(20), true,UserID, FormsAuthentication.FormsCookiePath);
string encTicket = FormsAuthentication.Encrypt(Ticket);
HttpCookie c = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
c.Expires = Ticket.Expiration;

Response.Cookies.Add(c);

string s = FormsAuthentication.GetRedirectUrl(userProperties. Name, true);

Response.Redirect(s ,true );


اگر زمان client جلوتر از زمان server باشه، مثلا ساعت سرور 9 و ساعت کلاینت 10 باشه، login اتفاق نمی افته. در واقع cookie بلافاصله expire می شه.

Vahid_moghaddam
پنج شنبه 07 شهریور 1387, 17:10 عصر
مشکلم حل شد. به نظرم بهتره برای تنظیم زمان مجاز بودن کاربر، بهتره از تنظیم زمان برای cookie به دلیلی که در بالا اومده استفاده نشه. تنظیم زمان برای ticket مناسب تره. بررسی اعتبار زمانی ticket نسبت به server انجام می شه.