[英]ASP.Net - C# How to make a password protected view so data on page is protected until the password is correct
我有一个页面,访问该页面时会包含一些敏感信息。 我知道有更好的方法可以解决此问题,例如Active Directory等,但是我现在的目标是尽可能简单的方法。
有没有一种方法可以通过文本框提示用户输入字符串,无论是使用警报还是任何其他方法,都会使DOM暂停以通过“查看页面源”显示和访问DOM? 因此,如果输入错误,则不会返回视图?
有人可以提供代码示例吗?
此操作结果正在访问我当前拥有的页面:
public ActionResult ViewRecords() {
return View();
}
无论如何,上面的代码依赖正确的字符串传递,如下所示:
public ActionResult ViewRecords() {
alert(//some sort of text box//);
if (string == 'password')
return View;
else
return View("Index.cshtml");
}
我进行了一些研究,发现有些人通过webconfig定义来执行此操作,但是对于我需要将其放入web.config
,c#控制器文件和.cshtml
视图中的确切代码感到困惑,以完成此工作。
[Http.Get]
public ActionResult SafePage() {
return View("PageThatPromptsForPassword");
}
在“ PageThatPromptsForPassword”视图中,编写一些JS提示用户输入密码。 将其传递(使用AJAX或表单)到第二个控制器动作进行验证。
[Http.POST]
public ActionResult ConfirmPassword(string passWord) {
if (passWord == MY_SECRET_PASSWORD) {
return View("SecretInformationPage");
} else {
return View ("PageThatPromptsForPassword");
}
}
**请注意,这是非常简单的,并且可能存在潜在的安全问题。 但这是一个起点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.