@EboLiK

Можно ли как-то сделать проверку на безопасность пароля по ходу ввода?

На некоторых сайтах есть такая штука, когда ты вводишь пароль - высвечивается подсказка о том, что нужно для большей безопасности: "Необходима хотя бы одна цифра", "Необходима хотя бы один символ" и т.д.
Такое можно реализовать на wpf?
  • Вопрос задан
  • 56 просмотров
Решения вопроса 1
VoidVolker
@VoidVolker
Dark side eye. А у нас печеньки! А у вас?
Да, можно. Делается потомок от стандартного Input или от InputBase (если разметка своя нужна и чтобы не плодить перезапись оригинальной), реализуется стандартный механизм работы поля пароля (поля PasswordChar, SecurePassword и замена вводимого символа на символ из PasswordChar), в нем вешается обработчик на изменение поля, а уже там и проверяется сам пароль и далее выставляется поле HintVisibility (через флаг неудобно будет в XAML) и HintType (обычный enum - опять же в XAML удобнее сразу привязываться к конкретному значению). Соответственно в разметке шаблона просто используете этот класс вместо стандартного и привязываете к этим двум полям видимость самой подсказки и её текст через определение её типа. Почему надо делать именно так: потому что сам пароль хранится в поле типа SecureString и необходимо расшифровывать строку и не сохранять ещё куда-то в расшифрованном виде (а через биндинги нельзя, да и не безопасно, даже если бы можно было). Все остальные варианты - костыли, от которых все равно в итоге придешь к наследованию от базового класса.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@SZolotov
Asp.net core, MAUI,WPF,Qt, Avalonia
Можно, но такое делается на стороне сервера, а на клиенте показывается ответ сервера с ошибкой, например
"Необходима хотя бы одна цифра", "Необходима хотя бы один символ" и т.д.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы