zoukankan      html  css  js  c++  java
  • 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;
    }
        

  • 相关阅读:
    SSM框架整合步骤
    Spring-data-jpa
    allure定制报告
    pytest常用选项
    staticmethod&classmethod&property
    __slot__
    python的参数传递
    闭包和装饰器
    内置高阶函数
    str
  • 原文地址:https://www.cnblogs.com/kokoliu/p/660114.html
Copyright © 2011-2022 走看看