Réponse courte
Alors que ZF prend et fournit quelques mesures pour sécuriser votre application, vous devriez toujours appliquer les mêmes précautions que vous utiliseriez sans Zend Framework.
En ce qui concerne l'extrait de code, consultez le chapitre sur Zend_Db in the Reference Guide:
Par défaut, les valeurs dans votre tableau de données sont insérées à l'aide des paramètres. Cela réduit le risque de certains types de problèmes de sécurité. Vous n'avez pas besoin d'appliquer l'échappement ou la citation aux valeurs du tableau de données.
Cela ne signifie pas que vous n'avez pas à vous soucier de la sécurité. Par exemple, pour le Update method ci-dessus
Le troisième argument est une chaîne contenant une expression SQL utilisée comme critère pour les lignes à modifier. Les valeurs et les identifiants de cet argument ne sont pas indiqués ou échappés. Vous êtes responsable de vous assurer que tout contenu dynamique est interpolé dans cette chaîne en toute sécurité. Voir Quoting Values and Identifiers pour les méthodes pour vous aider à le faire.
Remarque puisque vous utilisez Zend_Db_Table
évidemment, troisième argument est le deuxième argument.En interne, l'instance de table va déléguer l'appel à l'adaptateur db avec le premier paramètre étant le nom de table de l'instance de la table.
En ce qui concerne Zend_View et XSS vecteurs d'attaque:
Zend_View est livré avec une première série de classes d'aide, dont la plupart se rapportent à former la génération d'éléments et d'effectuer la sortie appropriée échapper automatiquement.
Encore une fois dont la plupart ne signifie pas tout. Zend_View
fournit Zend_View::escape() pour vous aider à assainir la sortie, mais ce n'est rien de spécial.
pouvons-nous l'utiliser dans le modèle avant d'enregistrer des données? –