2010-01-24 2 views
1

J'ai l'application ASP.NET MVC 1.0 et Entity Framework v1.Entrée malveillante dans ASP.NET MVC

Par défaut, le contenu soumis par l'utilisateur est validé pour une entrée malveillante. (Voir here). Le codage HTML des données soumises par l'utilisateur empêche les attaques par injection JavaScript. Entity Framework utilise en interne un SQL paramétré qui arrête l'injection SQL.

Est-ce suffisant? Que peut-on faire d'autre pour détecter et arrêter les entrées malveillantes (injection javascript/sql)?

Veuillez nous aviser.

Merci.

Répondre

2

Vous devez utiliser ViewModels à la présentation Récupérer les données des vues, puis les valider.Voici la validation des entrées

Transmettez ensuite les données de ViewModels à vos DomainModels (EF), puis validez vos modèles de domaine pour éviter les doma dans les règles.

2

Suite à ce que @ ali62 a posté;

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyAction([Bind(Exclude="id")] User user) 
{ 
    return View(); 
} 

et

[AcceptVerbs(HttpVerbs.Post)] 
public ActionResult MyAction([Bind(Include="name, email")] User user) 
{ 
    return View(); 
}