看板 Book11
作者 標題 FormsAuthenticationTicket
時間 2011年04月28日 Thu. PM 03:28:59
http://computer-repair.hsinchu-web.info/doc/computer-repair/security/2010-04-22/6705.html
1,設置IIS為可匿名訪問和Asp.Net web.config中設置為form驗證
2,檢索數據存儲驗證用戶,並檢索角色(如果不是基於角色可不用)
3,使用FormsAuthenticationTicket創建一個Cookie並回發到客戶端,並存儲
角色到票中,如︰
FormsAuthentication.SetAuthCookie(Username,true | false)
cookies保存時間︰
HttpContext.Current.Response.Cookies[FormsAuthentication.FormsCookieName].EXPires=DateTime.Now.AddDays(1)
如果需要存儲角色,採用︰
FormsAuthenticationTicket authTicket = new
FormsAuthenticationTicket(
1, // 版本號。
txtUserName.Text, // 與身份驗證票關聯的用戶名。
DateTime.Now, // Cookie 的發出時間。
DateTime.Now.AddMinutes(20),// Cookie 的到期日期。
false, // 如果 Cookie 是持久的,為 true;否則為 false。
roles ); // 將存儲在 Cookie 中的用戶定義數據。
roles是一個角色字符串數組
string encryptedTicket = FormsAuthentication.Encrypt(authTicket); //加密
存入Cookie
HttpCookie authCookie =
new HttpCookie(FormsAuthentication.FormsCookieName,
encryptedTicket);
Response.Cookies.Add(authCookie);
--
※ 作者: book11 時間: 2011-04-28 15:28:59 來自: 211.78.90.56
※ 看板: Book11 文章推薦值: 0 目前人氣: 0 累積人氣: 141
回列表(←)
分享