2010-03-31 4 views
3

Je souhaite autoriser les utilisateurs finaux de mon application Web à modifier les vues (via le back-office Web) stockées dans la base de données. Le moteur de vue souhaité doit être sûr pour l'injection de code, ce qui signifie que l'utilisateur final sera limité au nombre minimum absolu d'expressions disponibles, aucune insertion de code serveur n'est autorisée.Choix du moteur de vue MVC

Un moteur de vue approprié est-il disponible au téléchargement?

Répondre

2

Je ne sais pas d'un moteur existant, mais Phil Haack a un poste sur le stockage des vues dans une base de données: http://haacked.com/archive/2009/04/22/scripted-db-views.aspx

qui traite de poste avec l'idée de vues créées par l'utilisateur. Si vous souhaitez protéger contre les attaques par injection de code de style XSS, vous pouvez sanitize your HTML.

+0

Dès que je permets aux utilisateurs finaux de ma demande de modifier les vues, ils peuvent insérer du code serveur dans la vue (par exemple, si j'utilise spark view-engine: en utilisant la syntaxe suivante:

! {SERVER_CODE_THAT_CAN_DO_ANYTHING_UNSECURE}

) Donc, ici, j'ai le trou de sécurité directement sur mon serveur web. – leonard

+0

C'est ce que le second lien est pour - Jeff Atwood lui-même vous montre comment dépouiller les choses mauvaises à l'avant. Sachez que le serveur n'exécute rien lui-même avec ASP.NET MVC. Votre principale préoccupation est les attaques XSS javascript. –

Questions connexes