ASP.NET L'authentification des formulaires a échoué pour la demande. Raison: le billet fourni est expiré
j'obtiens cette erreur plusieurs fois dans le journal des événements et les utilisateurs sont déconnectés.
code de L'événement: 4005
Message d'événement: l'authentification des formulaires a échoué pour la demande. Raison: le billet fourni est expiré.
Heure de l'événement: 3/10/2011 3:35:22
Heure de l'événement (UTC): 3/10/2011 8:35:22
Code de l'événement: fc2f70cc85014b0ca7dbb01471617b66
Séquence d'événements: 3392
La survenue de l'événement: 1
Code du détail de l'événement: 50202
Pensées:
- Je n'utilise pas de formulaires web.
- Je ne pense pas que l'application pool soit en train de recycler.
- j'ai comparé L'ID de processus dans plusieurs événements et il est égal.
- ma clé machine n'est pas Autogénérisée.
4 réponses
ressemble à une erreur que vous obtiendriez lorsque votre ticket d'authentification de formulaires est expiré. Quelle est la période d'attente pour votre billet? Est-il réglé sur glissade ou expiration absolue?
je crois que le délai par défaut est de 20 minutes avec l'expiration glissante donc si un utilisateur est authentifié et à un moment donné ne frappe pas votre site pendant 20 minutes leur billet serait expiré. Si elle est réglée à l'expiration absolue il expirera X nombre de minutes après qu'il a été émis où X est votre paramètre de délai d'attente.
vous pouvez définir la Politique de timeout et d'expiration (par exemple glissing, absolute) dans votre web/machine.config
/configuration/system.web/authentication/forms
comme Scott l'a mentionné ici http://weblogs.asp.net/scottgu/archive/2010/09/30/asp-net-security-fix-now-on-windows-update.aspx Une fois que windows a installé la mise à jour de sécurité pour .net framework, vous rencontrerez ce problème. il suffit de modifier la section configuration de votre site web.config file et passez à un autre nom de cookie.
voici un bon article de Microsoft http://www.iis.net/learn/troubleshoot/security-issues/troubleshooting-forms-authentication qui couvre différents cas et scénarios.
j'ai eu le même problème après avoir utilisé un web.config à partir d'une autre machine. Le problème était lié à une défaillance de MachineKey
. Pour résoudre le problème, j'ai modifié le web.config pour utiliser le bon MachineKey
de mon serveur.
MSDN blog post montre comment générer une clé mécanique.