成员资格提供ValidateUser
使用EF很简单如何比较EF中区分大小写的字符串?
public override bool ValidateUser(string username, string password)
{
// Validate User Credentials
var r = db.ST_Users.FirstOrDefault(
x => x.Username.Equals(username) &&
x.Password.Equals(password));
return r != null ? true : false;
}
但是,如果使用balexandre
或BAleXanDre
这个返回true
(查找和检索对象洞)不管。
如何启用EF以区分大小写模式进行比较?
我知道如何在不区分大小写的比较(使用StringComparison.CurrentCultureIgnoreCase
超载,但我只是想对面)
+1是的答案和建议两者。向索尼,ECI以及所有其他已经提供新闻的公司学习 - 不要存储纯文本密码! – JasCav 2011-06-13 20:43:38
我使用'BCrypt'来存储我的密码,这个问题只有一个简单的例子。会奇怪,以我的名誉,我不会知道/存储敏感数据的正确方法! – balexandre 2011-06-13 21:41:42
@balexandre:我对'BCrypt'不熟悉,但是如果你在数据库中以散列形式存储你的密码,你不会有任何字符串不敏感的字符串比较问题,所以在我看来你并没有存储你的哈希形式的密码。也许你正在加密你的密码,而不是哈希安全。此外,为什么你想能够解密你的用户密码? – Steven 2011-06-14 06:49:12