C# 登录屏幕显示不正确的凭据
我正在用c#制作一个登录屏幕。如果用户名或密码不正确,我将如何使其明确显示C# 登录屏幕显示不正确的凭据,c#,C#,我正在用c#制作一个登录屏幕。如果用户名或密码不正确,我将如何使其明确显示 private void btnSubmit_Click(object sender, EventArgs e) { { string username = "Tim"; string password = "Hennings"; if ((this.txtUsername.Text == username) && (this.txtPassword
private void btnSubmit_Click(object sender, EventArgs e)
{
{
string username = "Tim";
string password = "Hennings";
if ((this.txtUsername.Text == username) && (this.txtPassword.Text == password))
{
if (txtUsername.Text == username && txtPassword.Text == password)
MessageBox.Show("Log in successful");
}
else
{
MessageBox.Show("Wrong Username/Password please try again");
txtUsername.Focus();
}
}
}
如果用户名或密码不正确,我将如何使其明确显示[?]
你不应该。这是一个安全问题,当您向攻击者提供发生错误的确切细节时
有关更多详细信息,请参阅:
这有什么不对吗?是的。没有看到这里的问题。事实上,这是毫无疑问的。也许是一些英语复习:问题是一个以“?”结尾的句子。这应该有用吗?但我建议使用一个数据库来存储数据。为什么要检查用户名和密码两次?你不应该告诉登录的人是用户名还是密码出错,只要告诉他们无法使用这些凭据登录即可。为什么如果有人试图入侵那里,他会非常高兴,因为他只需要先猜一个用户名,然后猜一个密码。
string username = "Tim";
string password = "Hennings";
if(this.txtUsername.Text != username)
{
MessageBox.Show("Wrong Username please try again");
txtUsername.Focus();
}else if(this.txtPassword.Text != password)
{
MessageBox.Show("Wrong Password please try again");
txtPassword.Focus();
}else
{
MessageBox.Show("Log in successful");
}
private void btnSubmit_Click(object sender, EventArgs e)
{
{
string username = "Tim";
string password = "Hennings";
string outputMessage = string.Empty;
if (this.txtUsername.Text != username)
{
outputMessage = "Username incorrect";
}
if (this.txtPassword.Text != password)
{
outputMessage = "Password incorrect";
}
if (!string.IsNullOrEmpty(outputMessage))
{
MessageBox.Show(outputMessage);
}
else
{
// Password and Username matched so log them in.
}
}
}