IsPersistent pas de travail - Cookie valide uniquement pour la session en cours

J'ai un ASP.NET MVC 5 application à l'aide de ASP.NET Identity 2.1.0 pour l'authentification de l'utilisateur.

Tout a bien fonctionné dans le passé, mais maintenant, j'ai découvert que la persistance des sessions utilisateur ne fonctionne plus. Je ne peux pas dire ce changement de cassé, mais il a travaillé quand j'ai mis en place l'Identité (converti à l'application de SimpleMembership) et c'est ma logique, j'ai en ce moment:

var result = await SignInManager.PasswordSignInAsync(model.UserName, model.Password, 
                                     model.RememberMe, shouldLockout: true);

SignInManager est mon ApplicationSignInManager basé sur SignInManager<ApplicationUser, int> et model.RememberMe est true.

Et ma configuration:

app.CreatePerOwinContext<ApplicationSignInManager>(ApplicationSignInManager.Create);

app.UseCookieAuthentication(new CookieAuthenticationOptions
    {
        AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
        LoginPath = new PathString("/Account/Login"),
        Provider = new CookieAuthenticationProvider
            {
                OnValidateIdentity = ApplicationCookieIdentityValidator.OnValidateIdentity(
                    validateInterval: TimeSpan.FromMinutes(0),
                    regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
            }
    });
app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5));
app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie);
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);

Tout fonctionne bien, sauf la persistance des sessions utilisateur. J'ai vérifié les cookies renvoyé par mon serveur et le .AspNet.ApplicationCookie est toujours retourné comme "valide pour la session en cours" au lieu d'une date dans le futur. Donc, lorsque vous fermez et rouvrez le navigateur j'ai besoin de vous connecter à nouveau...

Quelqu'un a une idée de pourquoi cela ne fonctionne pas (ou plus)?

P. S.: j'ai remplacé SignInAsync dans mon ApplicationSignInManager parce que je fais un peu personnalisée, logique, mais j'ai même vérifié avec le débogueur et pour l'appel suivant:

await base.SignInAsync(user, isPersistent, rememberBrowser);

isPersistent est true, de sorte qu'il doit créer une persisten cookie.

Je soupçonne validateInterval: TimeSpan.FromMinutes(0) peuvent être en cause. Parce que sur chaque demande, il se régénère cookie et définit un nouveau. Essayez de définir validateInterval à quelque chose de plus que de 0 et de voir si cela fonctionne.
Merci, c'était ça. A qui change avec V 2.1? Parce qu'il a certainement travaillé dans le début (V 2.0). De toute façon: ce Post est une réponse et je vais l'accepter. J'ai maintenant besoin de trouver l'écart autour de cela, car j'ai besoin (en raison de SSO) de validation à chaque requête.

OriginalL'auteur ChrFin | 2014-09-08