Как сделать мое имя пользователя и пароль чувствительными к регистру в C# windows form
Добрый день, пожалуйста, я создал форму входа в систему, но я заметил, что имя пользователя и пароль не чувствительны к регистру, когда пароль написан заглавной буквой, пользователь может использовать строчную букву для входа в систему, что не является правильным.
Что я уже пробовал:
SqlCommand cmd = new SqlCommand(); cmd.Connection = con; cmd.CommandType = CommandType.Text; cmd.CommandText = "Select * from Registration where Uname=@user and Password=@pass collate Latin1_General_CS_AS"; cmd.Parameters.AddWithValue("@user", txtuser.Text); cmd.Parameters.AddWithValue("@pass", txtpass.Text); //
PIEBALDconsult
Никогда не храните пароли таким образом.
https://www.codeproject.com/Tips/186585/Password-Storage-How-to-do-it
https://www.codeproject.com/Articles/704865/Salted-Password-Hashing-Doing-it-Right
https://www.codeproject.com/Articles/608860/Understanding-and-Implementing-Password-Hashing
https://www.codeproject.com/Articles/14537/The-Art-Science-of-Storing-Passwords
Maciej Los
Мой виртуальный 5!
Patrice T
Что заставляет вас думать, что база данных не чувствительна к регистру?
Richard Deeming
Пароли должен будьте чувствительны к регистру. Хранение их должным образом, как уже упоминалось выше, позаботится об этом.
Имя пользователя не должно будьте чувствительны к регистру. Зачем тебе это нужно john
, John
и JOhn
быть тремя отдельными пользователями? Не говоря уже о дополнительной нагрузке на пользователей, заставляющей их помнить точный случай своего имени пользователя.