如何在 C# 中安全地将用户名和密码等文本框值从一个页面传递到另一个页面 ASP.net

本文关键字:一个 net 另一个 ASP 安全 用户 文本 密码 | 更新日期: 2023-09-27 18:32:41

我正在用 asp.net C#构建一个Web应用程序,我正在做的是,如果用户尝试使用错误的用户名和密码访问他/她的帐户5次,第6次尝试,他/她将被重定向到验证码页面,在那里他被要求输入验证码文本。输入验证码文本后,如果这是真的,我正在使用用户管理器比较从登录页面传递的用户名和密码。我该怎么做,如何安全地将用户名和密码从一个页面传递到另一个页面?

更新:仅当验证码为真时,才会验证用户名和密码的第 6 个组合。我正在本地主机上工作

如何在 C# 中安全地将用户名和密码等文本框值从一个页面传递到另一个页面 ASP.net

你的工作流程对我来说没有多大意义。如果登录失败 5 次并且您要求提供验证码,则用户名/密码组合仍然无效,所以我根本不明白为什么您需要随身携带这些信息。

您真正想要的是将验证码合并到登录页面上,并且仅在该会话/ip/...

此外,用户名/密码在从浏览器到服务器的表单提交中已经以明文形式编码。因此,如果要保护该信息,最好使用 SSL。

如果你想将它们传递给其他页面,像user和pass这样的东西应该被加密,所以你应该创建一个函数来加密它,然后你可以将它们作为会话变量传递,或者在URL中传递,例如。

您需要使用 SSL。第 5 次登录失败后,您将凭据从服务器发回并将其存储在验证码表单的隐藏表单字段中。比您通过 SSL 发送回带有凭据的 POST 请求。

但基本上你可以在验证码成功后将用户重定向回登录。