Código:
Gracias y un saludo. 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

