Какова стандартная функция TokenLifespan для GeneratePasswordResetTokenAsync и GenerateUserTokenAsync

Я повсюду смотрел и не могу точно узнать, что такое по умолчанию для каждого из них.

Мне также нужно знать, есть ли способ установить разные Lifespans для каждого. Спасибо,

Ответы

Ответ 1

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

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

        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.