/ / MVC 5 Limit czasu wylogowania - asp.net-mvc, framework-framework, uwierzytelnianie, wylogowanie

MVC 5 Limit czasu wylogowania - asp.net-mvc, framework-entity, uwierzytelnianie, wylogowanie

Użytkownicy proszeni są o logowanie co 20 minut.

Jedna z tych sytuacji, w których nie wiesz, gdzie szukać. Używam C # MVC 5 IdentityFramework 1.0.0

Chcę zrobić limit czasu do 4 godzin.

Do tej pory próbowałem w web.config:

<system.web>
<sessionState timeout="2880"></sessionState>
<authentication mode="Forms">
<forms loginUrl="~/Account/Login" timeout="2880" />
</authentication>
</system.web>

iw Startup.Auth.sc:

app.UseCookieAuthentication(new CookieAuthenticationOptions
{
ExpireTimeSpan = TimeSpan.FromHours(4),
CookieSecure = CookieSecureOption.Never,
CookieHttpOnly = false,
SlidingExpiration = true,
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login")
});

czego mi brakuje?

EDYCJA - ROZWIĄZANIE

Rozwiązaniem jest umieszczenie machineKey w web.config w systemie.web. Generator kluczy można znaleźć http://aspnetresources.com/tools/machineKey

Migrowałem również do Identity 2.0 i zachowałem te ustawienia. Migrowałem używając tego bloga jako guid: http://typecastexception.com/post/2014/07/13/ASPNET-Identity-20-Extending-Identity-Models-and-Using-Integer-Keys-Instead-of-Strings.aspx

Odpowiedzi:

2 dla odpowiedzi № 1

Czy zdarza się to nawet wtedy, gdy uruchamiasz witrynę lokalnie? Spojrzeć na ten wpis na blogu opis podobnego przypadku.

Punkt z postu na blogu to:

... pamiętaj, że uwierzytelnianie za pomocą formularzy wykorzystuje klucz MachineKey komputera zaszyfrować plik cookie uwierzytelniania formularzy. „Czy klucz maszynowy może być zmienia się z czasem na moim wspólnym serwerze hostingowym? ”, zastanawiałem się.

Zanim wyślesz im e-maila z zapytaniem, spojrzałem nadokumentacja dla MSDN dla machineKey i odkrył, że istnieje tryb AutoGenerate, który może być ustawione na regenerację nowego klucza maszyny za każdym razem, gdy proces hosta dla aplikacja internetowa uruchamia się… po 20 minut bezczynności! Ah ha!


0 dla odpowiedzi nr 2

Upewnij się, że nie masz żadnych ajaxów tłaaktywność podczas sesji (SlidingExpiration jest domyślnie prawdziwe). Musisz także ręcznie usunąć stare pliki cookie po zmianie ExpireTimeStamp z domyślnych 14 dni na mniejszą wartość.