ASP.NET控件和AntiXss

时间:2012-08-22 12:56:08

标签: asp.net antixsslibrary

我正在做一些AntiXSS工作。用户输入一些文本然后通过

Microsoft.Security.Application.Encoder.HtmlEncode();

并保存到数据库中。

然后,此文本可以显示在标签或文本框中。

如果我将编码文本放入标签的text属性中,则显示正常。如果我将它分配给文本框的文本属性,它将以其编码形式显示。

如何在文本框和标签中正确显示文本?该库是否提供任何解码机制?

由于项目要求,我不能更改库或它在输入上编码的事实。

3 个答案:

答案 0 :(得分:1)

您可以使用Server.HtmlDecodeHttpUtility.HtmlDecode

答案 1 :(得分:0)

你做错了。您不应该输入HtmlEncode并将其保存到数据库,因为没有支持的解码方法。相反,您应该保存原始信息并在显示时对其进行编码。

答案 2 :(得分:0)

我建议使用GetSafeHtmlFragment删除不在白名单上的所有标记和属性。 以下链接将有所帮助。