Foros del Web » Programando para Internet » ASPX (.net) »

Caducidad de la cookie al día siguiente

Estas en el tema de Caducidad de la cookie al día siguiente en el foro de ASPX (.net) en Foros del Web. Hola, muy buenas. Envío una cookie al auntentificar a un cliente que caduca a los 20 minutos. Sin embargo, he intentado que si el cliente ...
  #1 (permalink)  
Antiguo 21/11/2005, 08:53
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 5 meses
Puntos: 4
Caducidad de la cookie al día siguiente

Hola, muy buenas. Envío una cookie al auntentificar a un cliente que caduca a los 20 minutos. Sin embargo, he intentado que si el cliente es uno en concreto le caduque al día siguiente y no a los 20 minutos, aunque cierre el explorador.

Código:
Private Sub creaTicket(ByVal nombre As String, ByVal rol As String, ByVal expiraMin As Integer)

        FormsAuthentication.Initialize()
        ' Caducidad del ticket al día siguiente, 
        ' sólo si se hace desde una IP y es para el usuario "privilegiado".
        If Request.ServerVariables("HTTP_CLIENT_IP") = "XXX.XXX.XXX.XXX" And nombre = "privilegiado" Then
            expiraMin = Today.AddDays(1).Subtract(Now).Minutes
        End If

        ' Se crea el ticket con el rol que le corresponda
        Dim ticket As New FormsAuthenticationTicket(1, _
            nombre, _
            DateTime.Now, _
            DateTime.Now.AddMinutes(expiraMin), _
            True, rol, _
            FormsAuthentication.FormsCookiePath)
        ' Se encripta el ticket
        Dim encTicket As String = FormsAuthentication.Encrypt(ticket)
        ' Se crea la cookie con el ticket encriptado
        Dim cookie As New HttpCookie(FormsAuthentication.FormsCookieName, encTicket)
        ' Caducidad de la cookie al día siguiente, 
        ' sólo si se hace desde una IP y es para el usuario "privilegiado".
        If Request.ServerVariables("HTTP_CLIENT_IP") = "XXX.XXX.XXX.XXX" And nombre = "privilegiado" Then
            cookie.Expires = Today.AddDays(1)
        End If
        ' Se envía la cookie
        Response.Cookies.Add(cookie)

    End Sub
Gracias y un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #2 (permalink)  
Antiguo 23/11/2005, 09:47
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 5 meses
Puntos: 4
Bueno, ya está, es así:

expiraMin = DateDiff(DateInterval.Minute, Now, Today.AddDays(1))

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:03.