Guides pratiques

Préparer un envoi de fichiers utile et contrôlé

Demander une pièce jointe ajoute un parcours complet : choix du fichier, transfert, contrôle, consultation et suppression. La fonction doit répondre à un besoin précis et pouvoir être exploitée par une personne identifiée.

Voir la méthode

Recevoir un fichier avec méthode

Justifier la demande et rendre les limites visibles

Décrivez le document nécessaire et la décision qu’il permet de prendre. Si le même résultat peut être obtenu avec quelques champs simples, examinez cette option. Indiquez avant le choix les formats, le nombre de fichiers, la taille autorisée et une solution lorsque le document ne convient pas.

N’exigez pas des informations personnelles qui ne sont pas nécessaires à la demande. Utilisez des fichiers fictifs pour la recette. Si les documents seront publiés, séparez cette décision de leur simple réception : recevoir une photographie n’établit pas automatiquement le droit de la publier.

Contrôler le contenu côté serveur

OWASP propose plusieurs contrôles complémentaires : formats autorisés, validation du type, noms de stockage maîtrisés, limites et emplacement protégé. Le type annoncé par le navigateur ne suffit pas, à lui seul, à établir la nature du fichier. Le contrôle de l’interface complète le contrôle serveur sans le remplacer.

Faites examiner le traitement par la personne responsable du logiciel. Définissez comment gérer les documents à analyser, les fichiers endommagés et les contenus refusés. Un scan ou une extension reconnue ne doit pas être présenté comme une garantie absolue d’innocuité.

Tester le parcours jusqu’au destinataire

Essayez un fichier autorisé, un fichier trop volumineux, un format refusé, un nom accentué et une interruption du transfert. Vérifiez que la personne comprend ce qui a été accepté et ce qu’elle doit corriger. Un message de réussite ne doit pas s’afficher si l’envoi n’a pas abouti.

Contrôlez l’arrivée dans la bonne file de travail et l’ouverture par une personne autorisée. Testez aussi un autre compte et une adresse directe de téléchargement. Le fichier doit rester inaccessible à une personne qui ne possède pas les droits prévus par le service.

Organiser stockage et suppression

Documentez l’emplacement de stockage, les accès, les sauvegardes et la durée justifiée par le besoin et le contexte applicable. Prévoyez la suppression des fichiers temporaires abandonnés autant que celle des documents traités. La notification peut désigner un dossier sécurisé plutôt que recopier chaque pièce dans plusieurs boîtes mail.

Après une évolution du formulaire, rejouez les cas limites et contrôlez les fichiers historiques. Le livrable attendu comprend une liste des formats, un parcours d’erreur compréhensible, une matrice de droits et une procédure de suppression attribuée à un responsable.

Documentation primaire : OWASP — File Upload Cheat Sheet.

Matrice de recette à adapter au projet

Ces contrôles proposés utilisent des cas fictifs. Décidez du comportement attendu avec l’équipe, notez le résultat et attribuez les écarts non résolus avant publication.

Cas de test, résultats attendus et preuves utiles
CasRésultat attenduPreuve à conserver
Fichier admisLa réception et le statut annoncé correspondent au fichier réellement traité.Nom affiché, taille et résultat de réception.
Type ou taille refusésLe serveur refuse le fichier et le formulaire permet de corriger.Résultat serveur et message accessible présenté.
Nom contenant des caractères inattendusLe nom ne choisit pas une destination de stockage ni une commande.Nom d’origine, nom de stockage et contrôle dans un environnement isolé.
Envoi interrompu ou répétéLe statut ne prétend pas que le dépôt est terminé sans réception complète.Séquence réseau et éléments effectivement conservés.

Questions fréquentes

Un contrôle JavaScript suffit-il pour les fichiers ?

Non. Il aide l’utilisateur à corriger son choix, mais le serveur doit appliquer ses propres règles. Testez aussi une requête qui ne passe pas par l’interface habituelle dans un environnement autorisé.

Faut-il envoyer toutes les pièces par e-mail ?

Choisissez le circuit réellement nécessaire. Copier un document dans plusieurs boîtes multiplie les endroits à gérer. Un accès sécurisé à un dossier peut être préférable lorsque droits, suivi et suppression doivent être maîtrisés.