Я очень новичок в .net Core, у меня есть форма, которая просит пользователя изменить свой пароль. И мне нужно проверить валидацию в бэкенде. Интерфейс в этом случае отправляет 3 параметра (UserID, Password, ConfirmedPWD). Что мне нужно в бэкэнде с точки зрения классов и контроллера?
Мое веб-приложение - это шаблон React Redux .Net Core 2.1.
Любая помощь приветствуется
Валидации:
*Должен быть 1 Альфа
*Должен быть 1 цифровой
*Минимум 8, максимум 16
Класс CustomPasswordValidator:
public class CustomPasswordValidator
{
public int RequiredLength { get; set; }
public CustomPasswordValidator(int length)
{
RequiredLength = length;
}
public Task<IdentityResult> ValidateAsync(string item)
{
if (String.IsNullOrEmpty(item) || item.Length < RequiredLength)
{
List<string> errors = new List<string>() { "Password should be of length {0}" };
return Task.FromResult(IdentityResult.Failed());
}
string pattern = @"^(?=.*[0-9])(?=.*[!@#$%^&*])[0-9a-zA-Z!@#$%^&*0-9]{10,}$";
if (!Regex.IsMatch(item, pattern))
{
return Task.FromResult(IdentityResult.Failed());
}
return Task.FromResult(IdentityResult.Success);
}
}