Cakephp 告诉用户登录失败时他们的电子邮件/用户名不存在

Cakephp 告诉用户登录失败时他们的电子邮件/用户名不存在,cakephp,Cakephp,我当前在我的Cake应用程序上显示错误消息$this->Auth->Login错误=登录失败。无效的用户名或密码。但是如果用户没有电子邮件/用户名,我想更改此消息,因为他们可以在数据库中同时使用这两个用户名登录 基本上是这样的: if(user has email but wrong password) { $this->Auth->loginError = "Login failed. Invalid username or password."; } else if(user h

我当前在我的Cake应用程序上显示错误消息$this->Auth->Login错误=登录失败。无效的用户名或密码。但是如果用户没有电子邮件/用户名,我想更改此消息,因为他们可以在数据库中同时使用这两个用户名登录

基本上是这样的:

if(user has email but wrong password)
{
$this->Auth->loginError = "Login failed. Invalid username or password.";
}
else if(user has no email)
{
$this->Auth->loginError = "Login failed. The email ****** could not be found in the database.";
}

从安全角度看,这不是好的做法。你会透露你的网站上是否注册了某个特定的电子邮件地址,而这些信息可能是人们不想获得的。我想说的是,如果你在寻找安全性,那就太可怕了。它使暴力所需的时间减半。此外,人们还可以知道电子邮件是否已注册。永远不要解释登录失败的原因。以这种方式公开信息是可能的。