如何在 MVC View Razor 中屏蔽密码
How to mask Password in MVC ViewRazor
我需要在 MVC 项目的视图中屏蔽密码,我有用户列表。
型号:
[Required]
[StringLength(50)]
[DataType(DataType.Password)]
[DisplayName("Password")]
public string Password { get; set; }
我在视图中有这段代码,我现在可以在其中看到密码。
@Html.DisplayFor(modelItem => item.Password)
如何在视图中屏蔽密码?
编辑:
如果我尝试 @Html.PasswordFor(modelItem => item.Password) 我会看到这个:
Image1
@Html.PasswordFor(modelItem => item.Password)
试试这个
如果我正确理解您要执行的操作,我推荐一种完全不同的方法。确实,没有理由根据密码中的字符数显示正确的点数。这样做是一个安全漏洞;它告诉攻击者他们只需要尝试给定长度的密码。事实上,您不应该一开始就以明文形式存储密码,所以您不应该知道有多少个字符
综上所述,我建议使用
@Html.Raw("\u2022\u2022\u2022\u2022\u2022")
字符串“\u2022”指的是一个黑点的unicode字符,所以这行只会显示5个黑点
要创建适合模型中数据类型属性的完整表单 class 您可以使用以下语句:
@Html.EditorForModel()
此方法正在为模型 class 的每个 属性 生成代码,相当于以下内容:
@Html.LabelFor(model => model.Name)
@Html.TextBoxFor(model => model.Name)
我需要在 MVC 项目的视图中屏蔽密码,我有用户列表。
型号:
[Required]
[StringLength(50)]
[DataType(DataType.Password)]
[DisplayName("Password")]
public string Password { get; set; }
我在视图中有这段代码,我现在可以在其中看到密码。
@Html.DisplayFor(modelItem => item.Password)
如何在视图中屏蔽密码?
编辑:
如果我尝试 @Html.PasswordFor(modelItem => item.Password) 我会看到这个:
Image1
@Html.PasswordFor(modelItem => item.Password)
试试这个
如果我正确理解您要执行的操作,我推荐一种完全不同的方法。确实,没有理由根据密码中的字符数显示正确的点数。这样做是一个安全漏洞;它告诉攻击者他们只需要尝试给定长度的密码。事实上,您不应该一开始就以明文形式存储密码,所以您不应该知道有多少个字符
综上所述,我建议使用
@Html.Raw("\u2022\u2022\u2022\u2022\u2022")
字符串“\u2022”指的是一个黑点的unicode字符,所以这行只会显示5个黑点
要创建适合模型中数据类型属性的完整表单 class 您可以使用以下语句:
@Html.EditorForModel()
此方法正在为模型 class 的每个 属性 生成代码,相当于以下内容:
@Html.LabelFor(model => model.Name)
@Html.TextBoxFor(model => model.Name)