asp.net - not - formsauthentication signout
La autenticación de formularios ASP.NET falló para la solicitud. Motivo: El ticket suministrado ha expirado. (4)
AS Scott mencionó aquí http://weblogs.asp.net/scottgu/archive/2010/09/30/asp-net-security-fix-now-on-windows-update.aspx Después de que Windows instaló la actualización de seguridad para el marco .net , te encontrarás con este problema. simplemente modifique la sección de configuración en su archivo web.config y cambie a un nombre de cookie diferente.
Recibo este error muchas veces en el registro de eventos y los usuarios se desconectan.
Código de evento: 4005
Mensaje de evento: error de autenticación de formularios para la solicitud. Motivo: el ticket suministrado ha caducado.
Hora del evento: 10/03/2011 3:35:22 PM
Hora del evento (UTC): 3/10/2011 8:35:22 PM
ID de evento: fc2f70cc85014b0ca7dbb01471617b66
Secuencia de eventos: 3392
Acontecimiento del evento: 1
Código de detalle del evento: 50202
Pensamientos
- No estoy usando formularios web.
- No creo que el grupo de aplicaciones esté reciclando.
- Comparé el ID de proceso en varios eventos y es igual.
- La clave de mi máquina no es Generación automática.
Aquí hay un buen artículo de Microsoft http://www.iis.net/learn/troubleshoot/security-issues/troubleshooting-forms-authentication que cubre varios casos y escenarios.
He tenido el mismo problema después de usar un web.config de otra máquina. El problema estaba relacionado con un MachineKey
no válido. Para resolver el problema, modifiqué web.config para usar la MachineKey
correcta de mi servidor.
Esta publicación del blog de MSDN muestra cómo generar una MachineKey.
Suena como un error que obtendrías cuando el ticket de autenticación de formularios haya caducado. ¿Cuál es el tiempo de espera para su boleto? ¿Está configurado a deslizamiento o caducidad absoluta?
Creo que el valor predeterminado para el tiempo de espera es 20 minutos con vencimiento deslizante, por lo que si un usuario se autentica y en algún momento no llega a su sitio durante 20 minutos, su boleto caducaría. Si se establece en expiración absoluta, expirará X número de minutos después de que se emitió, donde X es su configuración de tiempo de espera.
Puede configurar la política de tiempo de espera y expiración (por ejemplo, deslizamiento, absoluto) en su web/machine.config
/configuration/system.web/authentication/forms
en /configuration/system.web/authentication/forms