En utilisant DotNetOpenAuth 3 dans ASP.NET MVC et mettre en œuvre une installation RememberMe ...RememberMe avec DotNetOpenId dans ASP.NET MVC
Je trouve que même si je mets createPersistentCookie à true dans FormsAuthentication.RedirectFromLoginPage et FormsAuthentication. SetAuthCookie l'utilisateur ne se souvient pas une fois que la session ASP.NET expire. Si j'inspecte le cookie, je trouve qu'il est marqué comme persistant et a une date d'expiration dans le futur, je suppose parce que j'ai défini mon délai d'expiration web.config FORMS dans quelques années. Quoi qu'il en soit, si l'utilisateur ferme le navigateur et le rouvre, il se souvient correctement - tant que la session ASP n'a pas expiré. De Scott Hanselmann fait que je me demande si c'est parce que FormsAuthentication essaie de renouveler le ticket d'authentification et peut-être dans un modèle OpenId qui ne fonctionne pas, mais j'ai mis FORMS SlidingExpiration = "false" dans web.config et de toute façon je Je pensais que forcer un cookie persistant rendrait ce truc inutile. Je me demande aussi pourquoi l'exemple DotNetOpenId MVC ne comprend pas de case à cocher RememberMe - peut-être y a-t-il quelque chose de compliqué?
D'un autre côté, ici, chez StackOverflow, je vois que je me souviens automatiquement d'une session à l'autre. Vous vous demandez s'ils ont utilisé autre chose que DotNetOpenId pour faire leur authentification OpenId.
Quelqu'un d'autre fait-il RememberMe réussi avec DotNetOpenId dans ASP.NET MVC? Des astuces?
[Mise à jour]
Merci d'avoir essayé d'aider, Andrew. Il s'avère que ce n'était pas à propos de DotNetOpenId.
Après avoir lu this, je conclus que mon fournisseur d'hébergement est susceptible de recycler régulièrement le pool d'applications et que le chiffrement du ticket d'authentification est effectué avec une nouvelle clé machine.
Selon l'article précédent lié I ajouté ce qui suit sous System.Web dans mon web.config et il résolu la question:
<machineKey
validationKey="(generated a new key to place here)"
decryptionKey="(generated a new key to place here)"
validation="SHA1"
decryption="AES" />
Salut Martin, StackOverflow utilise en effet DotNetOpenId. Je pense que votre problème de session de cookie n'a probablement rien à voir avec OpenID, car je ne pense pas que DNOI puisse interférer avec votre cookie et qu'il n'enregistre jamais un utilisateur. Je vais essayer de faire des recherches à ce sujet et poster une réponse si j'apprends quelque chose. –
Merci pour cela. Cela m'a aidé. Vous devriez poster votre solution comme réponse afin qu'elle puisse être mise à jour et obtenir le badge "auto-apprenant" – BigJoe714