• Limiting Persistent Authentication Cookie Lifetime


    void Application_EndRequest(Object sender, EventArgs e)
    {
        
    // Change the expiration date on outgoing persistent forms
        
    // authentication tickets to 24 hours hence.
        HttpCookie cookie1 = GetCookieFromResponse(
            FormsAuthentication.FormsCookieName);

        
    if (cookie1 != null && !String.IsNullOrEmpty (cookie1.Value))
        
    {
            FormsAuthenticationTicket ticket1 
    = FormsAuthentication.Decrypt(
                Response.Cookies[FormsAuthentication.FormsCookieName].Value);
            
    if (ticket1.IsPersistent)
            
    {
                FormsAuthenticationTicket ticket2 
    =
                    
    new FormsAuthenticationTicket (
                    ticket1.Version, ticket1.Name, ticket1.IssueDate,
                    DateTime.Now.AddHours (
    24), // New expiration date
                    ticket1.IsPersistent, ticket1.UserData,
                    ticket1.CookiePath
                );

                Response.Cookies.Remove(FormsAuthentication.FormsCookieName);
                HttpCookie cookie2 
    = new HttpCookie(
                    FormsAuthentication.FormsCookieName,
                    FormsAuthentication.Encrypt(ticket2));
                cookie2.Expires 
    = ticket2.Expiration;
                Response.Cookies.Add(cookie2);
            }

        }

    }


    HttpCookie GetCookieFromResponse (
    string name)
    {
        HttpCookieCollection cookies 
    =
            HttpContext.Current.Response.Cookies;
        
    int count = cookies.Count;
        
    for (int i=0; i<count; i++{
            
    if (String.Compare (cookies[i].Name, name, true== 0)
                
    return cookies[i];
        }

        
    return null;
    }
        

  • 相关阅读:
    Ubuntu中用户名密码和root密码修改
    在Python中,输出格式:%d , %6d , %-6d, %06d , %.6f的一些区分
    定制的print()输出格式
    python编程系列---Pycharm快捷键(更新中....)
    webbrowser控件——Windows下的开发利器
    Windows读写文件的猫腻
    根据GUID获取设备信息
    转:APDU命令格式
    VC中添加消息响应函数
    VC 取消warning
  • 原文地址:https://www.cnblogs.com/kokoliu/p/660114.html
Copyright © 2020-2023  润新知