12
我有一個使用身份的ASP.NET項目。有關密碼的身份配置,正在使用PasswordValidator
。如何擴大密碼的執行範圍(PasswordValidator
目前有RequiredLength
,RequiredDigit
等),以滿足在N天后要求密碼過期的要求?如何使用ASP.NET身份框架設置密碼過期
我有一個使用身份的ASP.NET項目。有關密碼的身份配置,正在使用PasswordValidator
。如何擴大密碼的執行範圍(PasswordValidator
目前有RequiredLength
,RequiredDigit
等),以滿足在N天后要求密碼過期的要求?如何使用ASP.NET身份框架設置密碼過期
內置ASP.NET Identity 2沒有這樣的功能。最簡單的方法是在用戶上添加一個字段,如LastPasswordChangedDate。然後在每個授權過程中檢查該字段。
public class ApplicationOAuthProvider : OAuthAuthorizationServerProvider
{
public override async Task GrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContext context)
{
var user = await GetUser(context.UserName, context.Password);
if(user.LastPasswordChangedDate.AddDays(20) < DateTime.Now)
// user needs to change password
}
}
@ RickAnd-MSFT下面的答案在哪裏? – mcfea 2016-02-25 21:16:41
@ RickAnd-MSFT錯過發佈的答案..... – 2016-04-12 17:44:36
@EricFalsken他在一年前發佈了一個答案,但它似乎被刪除。上述解決方案是處理密碼擴展的最簡單和最好的方法。沒有這樣的內置功能。 – Rikard 2016-04-15 07:04:13