Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc AllowHtml in属性允许我的用户断开页面_Asp.net Mvc_Asp.net Mvc 3_Razor - Fatal编程技术网

Asp.net mvc AllowHtml in属性允许我的用户断开页面

Asp.net mvc AllowHtml in属性允许我的用户断开页面,asp.net-mvc,asp.net-mvc-3,razor,Asp.net Mvc,Asp.net Mvc 3,Razor,我使用tinyMCE允许用户在文本区域中设置文本样式。 我有一处房产 [AllowHtml] Description {get;set;} 一切正常。但如果使用,请写以下内容: <div>not closed tag 只允许发布某些特殊字符。这将不会验证您的标记 如果一个属性被标记为allowtmlatAttribute属性,ASP.NET MVC框架将在模型绑定期间跳过该属性的验证 将用户生成的标记加载到页面上可能是一个安全问题。您的验证器可能希望去掉某些标记,如脚本。许多网站

我使用tinyMCE允许用户在文本区域中设置文本样式。
我有一处房产

[AllowHtml] Description {get;set;}
一切正常。但如果使用,请写以下内容:

<div>not closed tag
只允许发布某些特殊字符。这将不会验证您的标记

如果一个属性被标记为allowtmlatAttribute属性,ASP.NET MVC框架将在模型绑定期间跳过该属性的验证


将用户生成的标记加载到页面上可能是一个安全问题。您的验证器可能希望去掉某些标记,如
脚本。
许多网站使用iframe来显示用户生成的标记内容,以避免出现此问题。

无法说明这有多危险。不允许用户转储原始html。但我必须这样做:)我使用tiny mce允许用户生成粗体、斜体文本、列表和项目符号。但是,如果有坏人进入
ss
并保存,这对我来说是一个大问题,必须找到一些解决方案。我确信如果有人输入
alert(x)不保存到数据库。仅仅是未关闭的标记会制造麻烦。如果有人使用
iframe
和加载脚本的
src
呢?或者可能是
或其他一些可能破坏页面的随机事件。stackoverflow如何允许这种情况?我可以在问题中保留未关闭的标记,并且不会破坏任何内容。Stackoverflow和StackExchange通常不使用
Html.Raw
,也不使用
AllowHtml
。用户输入被删除,符号用于表示粗体、斜体、代码块等。
@Html.Raw(Model.Description)