0

我现在运行一个coldfusion应用程序,登录后向数据库发送查询,查找与表单中输入的用户名和密码相同的行。

目前,它完全不区分大小写。但是,我想在密码字段中添加区分大小写的功能,以便用户必须拥有准确的密码。有没有办法在coldfusion中做一个区分大小写的IF语句?

4

3 回答 3

7

您可以 hash() 两个值并比较哈希值。

<cfif Hash( DBPassword ) EQ Hash( SubmittedPassword )>
      <!--- Login Code --->
 </cfif>

此外,您不应该将密码作为纯文本存储在数据库中。

于 2012-04-07T17:21:38.193 回答
6

如此处所述: http ://www.irt.org/script/3018.htm

似乎你可以使用:

<cfif Compare(string1,string2) eq "0">...</cfif>
于 2012-04-07T17:29:16.810 回答
3

另外一个选项:

如果您的数据库支持区分大小写,请将您的表设置为使用区分大小写的排序规则 - 然后您的用户查找查询将对存储和提供的用户名/密码进行区分大小写的比较。然后,您不必使用 CF 进行任何查询后字符串比较(运行少 1 个进程 = 好 :)

+1 对 Leigh 关于以纯文本形式存储密码的警告。

于 2012-04-08T14:44:37.833 回答