2015-08-04 2 views

ответ

17

По умолчанию, по-видимому, 24 часа для любого из токенов. Вы можете установить его на другое значение, но одно и то же значение будет применяться ко всем токенам одинаково (GenerateEmailConfirmationTokenAsync, GeneratePasswordResetTokenAsync и GenerateUserTokenAsync).

Установка нового значения выполняется путем указания, например, TokenLifespan = TimeSpan.FromHours(3) в методе ApplicationUserManager.Create в IdentityConfig.cs файле App_Start \:

 if (dataProtectionProvider != null) 
     { 
      manager.UserTokenProvider = 
       new DataProtectorTokenProvider<ApplicationUser>(dataProtectionProvider.Create("ASP.NET Identity")) 
       { 
        // Added custom code to set a different lifespan 
        TokenLifespan = TimeSpan.FromHours(3) 
       }; 
      ; 
     } 
     return manager; 

Источник: http://www.asp.net/identity/overview/features-api/account-confirmation-and-password-recovery-with-aspnet-identity

Различные продолжительность жизни для разных типов жетоны: похоже, отброшено к следующему «основному обновлению», за это: https://aspnetidentity.codeplex.com/workitem/2228.

+0

Для меня (Identity 2.2.1) значение по умолчанию составляет всего 15 минут. Настройка TokenLifespan работала для меня. – Smix

Смежные вопросы