我现在正在运行一个coldfusion应用程序,其中一个登录名向数据库发送查询,查找的行和用户名和密码与输入表单的行相同。
当然,它完全不区分大小写。但是,我想在密码字段中添加区分大小写,以便用户必须拥有确切的密码。有没有办法在coldfusion中做一个区分大小写的IF语句?
答案 0 :(得分:7)
您可以散列()两个值并比较哈希值。
<cfif Hash( DBPassword ) EQ Hash( SubmittedPassword )>
<!--- Login Code --->
</cfif>
此外,您不应该将密码作为纯文本存储在数据库中。
答案 1 :(得分:5)
答案 2 :(得分:3)
另一种选择:
如果您的数据库支持区分大小写,请将表设置为使用区分大小写的排序规则 - 然后您的用户查询查询将对存储的和提供的用户名/密码进行区分大小写的比较。您不必使用CF进行任何查询后字符串比较(减少1个进程运行=良好:)
+1 Leigh关于以纯文本格式存储密码的注意事项。