Je viens vers vous car j'ai un problème avec l'authentification ASP.NET sur mon site Internet. Cela fait plusieurs semaines que je cherche, mais toujours le même problème.
Je souhaite à faire en sorte que mes utilisateurs n'est pas à se relogguer constamment, comme sur Codes-Sources, afin de rendre la navigation agréable.
J'utilise l'authentification ASP.NET par login.
Après avoir vérifié l'authenticité des informations d'identification saisie par l'utilisateur, je crée un tocket d'authentification de 4 ans, et un cookie de 4 ans, si l'utilisateur souhaite que le site se souvienne de lui :
Malgrès tout ça, mes utilisateurs doivent se relogguer toutes les 24 heures en moyenne. Sérieux là je n'y comprend vraiment rien, mon code me paraît juste.
Désolé pour la tartine de code, mais là il me faut de l'aide :)
j'ai cherché pedant longtemps aussi l'origine est du à l'hébergeur, si celui-ci est en load balancing ex: aspserveur ou ikoula et autre essaye avec machinekey dans ton web.config.
ceci dit moi j'ai résolu en changeant d'hebergeur.
J'ai des balises membership effectivement, mais pas de paramètre Timeout à ce niveau là. En revanche, j'ai jonglé avec le paramètre Timeout dans les balises :
Bonjour, effectivement, c'est une heure par défaut. Mais il me semble que c'est ici le Timeout de session que l'on règle. Hors on m'a conseillé de ne pas le régler trop grand, pour eviter de faire péter le pool aspnet de IIS (en cas de trop nombreux visiteurs authentifiés). Mais ce que je ne comprend pas c'est que mon FormsAuthenticationTicket a une validité de 4 ans, donc lors de la lecture du cookie (qui a lui aussi une durée de vie de 4 ans) dans le global.asax, ce même ticket devrait logiquement être renouvellé.
J'avais testé je ne sais combien de fois de changer la valeur du timeout comme tu me l'as indiqué, mais toujours sans succès...
Effectivement mon hébergeur a mis en place une solution de Load Balancing il me semble! Je vais me renseigner de ce côté là. Qu'entend tu par "essaye avec machinekey dans ton web.config." ?