Exercices B03
Validation des entrĂ©es â 10 exercices pratiques
EX1Vulnérabilité mass assignment
Quel est le problÚme de sécurité dans ce code ?
app.post('/register', async (req, res) => { const user = await User.create({ ...req.body }); res.json(user); });
EX2Options Joi importantes
Pourquoi utiliser
{ abortEarly: false, stripUnknown: true } dans Joi ?EX3SchĂ©ma Joi â email
Quel schéma Joi valide correctement un champ email obligatoire ?
EX4Validation vs Sanitisation
Quelle est la différence principale entre validation et sanitisation ?
EX5Validation cÎté client
Un formulaire HTML a
required, maxlength="100" et une validation JavaScript. Pourquoi le serveur doit-il quand mĂȘme valider ?EX6Zod safeParse vs parse
Dans un handler Express, quelle méthode Zod est préférable et pourquoi ?
EX7Validation d'ID dans l'URL
Pour valider
req.params.id dans /users/:id, quel schéma Joi protÚge contre le path traversal ?EX8Sanitisation SQL
Quelle est la meilleure protection contre l'injection SQL ?
EX9Ordre â valider puis sanitiser
Dans quel ordre doit-on traiter les données utilisateur ?
EX10Payload oversized
Un attaquant envoie un payload JSON de 100MB à votre API. Quelle protection est nécessaire ?