Modèle gratuit

Checklist d’audit de code, sans preuve, pas de constat

Une checklist pour auditer une base de code avant un lancement, une levée ou une passation. Elle commence par vérifier que le livrable correspond à ce qui a été convenu, puis couvre le contrôle d’accès, les secrets, les dépendances, les entrées, les paiements et la fiabilité. Chaque constat a une gravité, un emplacement et une preuve. À copier ou télécharger en Markdown.

Gratuit · Markdown · sans inscription

Quand l’utiliser

Un audit répond à deux questions : avons-nous construit ce qui était convenu, et peut-on le mettre entre les mains de clients ? Menez-le aux moments où la réponse compte le plus.

  • Avant un lancement public ou une soumission sur un store

  • Quand un prestataire, un studio ou un agent de code rend son travail

  • Avant une due diligence, ou en reprenant la base de code de quelqu’un d’autre

  • Après un changement important sur l’authentification, les paiements ou l’accès aux données

Le modèle

Le modèle complet

Tout ce qui suit est inclus quand vous le copiez ou le téléchargez. Remplacez les blancs entre [crochets] et supprimez les conseils au fur et à mesure.

Audit de code : [Nom du projet]

Remplacez tout ce qui est entre [crochets]. Ne cochez une ligne qu’après avoir vu la preuve vous-même. Tout échec devient un constat numéroté dans le journal final, et l’audit n’est validé que lorsqu’il ne reste aucun constat critique ou élevé ouvert et que le produit est en ligne.

01Périmètre

Fixez précisément ce qui est audité. Un audit de « l’appli » sans commit précis ne peut pas être refait.

  • Dépôt: [URL]
  • Commit ou tag: [SHA ou tag de version]
  • Périmètre convenu: [Version du PRD ou numéro de référence audité]
  • Environnement: [URL de production, build du store ou préproduction]
  • Auditeur et date: [Nom], [date]

02Couverture des exigences

Le livrable correspond-il à ce qui a été convenu ? Passez les exigences une à une au regard du périmètre figé.

  • Chaque exigence Must a des critères d’acceptation
  • Chaque exigence Must a un travail terminé qui s’y rattache
  • Chaque vérification d’acceptation passe sur le produit en service
  • Les exigences modifiées après validation sont signalées, avec l’ancienne et la nouvelle formulation
  • Les exigences abandonnées après validation sont consignées comme décisions, pas supprimées
  • Les commits et pull requests citent les identifiants d’exigences

03Contrôle d’accès

La plupart des constats graves des petits produits se trouvent ici. Testez en changeant des identifiants et en supprimant des sessions, pas en lisant l’interface.

  • Chaque route qui lit ou écrit des données privées vérifie la session
  • Les actions d’administration vérifient un rôle ou une permission, pas seulement la connexion
  • Modifier un identifiant dans une URL ou une requête ne donne pas accès aux données d’un autre compte
  • Les jetons d’API ont une portée limitée et leur révocation est immédiate
  • Les liens de réinitialisation, d’invitation et de connexion expirent et ne servent qu’une fois

04Secrets et configuration

Vérifiez l’historique autant que l’état actuel. Une clé supprimée dans un commit ultérieur reste publiée.

  • Aucune clé, aucun jeton ni mot de passe dans le dépôt ou son historique
  • Les fichiers d’environnement sont exclus du contrôle de version
  • Aucun secret serveur n’est exposé au navigateur via une variable publique
  • La production et le développement utilisent des identifiants différents
  • Les identifiants divulgués ou partagés ont été renouvelés

05Dépendances

Utilisez une base d’avis de sécurité comme npm audit ou OSV et notez les identifiants. Ne vous fiez pas à la mémoire.

  • Avis connus vérifiés, identifiants notés pour tout ce qui a été trouvé
  • Lockfile versionné et utilisé pour le build
  • Paquets non maintenus ou abandonnés signalés
  • Scripts d’installation des nouvelles dépendances relus

06Traitement des entrées

Tout ce qu’un utilisateur peut envoyer est non fiable, y compris les en-têtes, les noms de fichiers et le corps des webhooks.

  • Les requêtes à la base sont paramétrées, jamais construites par concaténation
  • Aucun eval ni exécution dynamique de code à partir d’entrées utilisateur
  • Le contenu utilisateur est échappé avant affichage
  • Les fichiers envoyés sont contrôlés en type et en taille, et stockés hors de la racine web
  • Les requêtes serveur vers des URL fournies par l’utilisateur sont restreintes
  • Les formulaires publics ont une limite de débit ou une protection anti-abus

07Parcours d’argent

Tout ce qui est ici passe avant le reste. Un bug qui débite ou crédite deux fois coûte de l’argent chaque heure où il est en ligne.

  • Les traitements de paiement et de commande sont idempotents : une nouvelle tentative ne débite pas deux fois
  • Les signatures des webhooks sont vérifiées avant de faire confiance à quoi que ce soit
  • Prix et montants sont calculés côté serveur, jamais repris du client
  • Remboursements, crédits et bons ne peuvent pas être dépensés deux fois en cas de requêtes simultanées

08Fiabilité et exploitation

Ce qui se passe un mauvais jour, et si quelqu’un s’en apercevrait.

  • Les erreurs remontent dans un outil de supervision que quelqu’un consulte
  • Des sauvegardes existent, et une restauration a réellement été testée
  • Les migrations sont appliquées avant la mise en ligne du code qui en dépend
  • Les tâches planifiées peuvent s’exécuter deux fois sans dégât

09C’est en ligne

L’audit d’un produit que personne hors de l’équipe ne peut atteindre n’est pas terminé.

  • Déployé et accessible à quelqu’un qui ne travaille pas ici
  • URL de production ou fiche du store notée
  • L’inscription et le parcours principal fonctionnent en production, pas seulement en local

10Journal des constats

Une ligne par vérification échouée. Classez d’abord ce qui coûte de l’argent ou expose des données. Un constat sans preuve est une opinion : retirez-le ou allez chercher la preuve.

Gravité: Critique, Élevée, Moyenne, Faible ou Info

IDGravitéEmplacementPreuveReproduireCorrectif proposéStatut
F-001[Critique][chemin/fichier.ts:42][Ce qui montre le problème][Étapes][Modification à faire]Ouvert
F-002[Élevée][Route ou fichier][Ce qui montre le problème][Étapes][Modification à faire]Ouvert

11Verdict

Validé, ou nouvelle itération. Il n’y a pas de validation partielle.

  • Résultat: [Validé / Nouvelle itération]
  • Constats ouverts: [Nombre par gravité]
  • Suite à donner: [Où les correctifs sont suivis]
  • Prochain audit: [Date ou déclencheur]

Atrix AI

Le faire avec Atrix AI

Atrix AI n’analyse pas votre code. Il répond à la première section de cette checklist, celle que les équipes sautent souvent : ce qui a été construit est-il ce qui avait été convenu ? Le reste de l’audit vous revient, et ses constats deviennent du travail suivi.

  • Figer ce qui a été convenu

    Acceptez vos exigences et figez-les dans une référence numérotée. Elle conserve la formulation exacte et les documents tels qu’ils étaient, pour que des modifications ultérieures ne réécrivent pas en silence ce qui a été validé.

  • Voir la couverture

    Pour chaque exigence de la référence, Atrix indique si du travail existe, s’il est en cours ou terminé, et signale les exigences modifiées, abandonnées ou supprimées après le gel. Chaque état est calculé à partir de vos données, pas de l’avis d’un modèle.

  • Suivre les constats comme du travail

    Consignez chaque constat de cette checklist sous forme de ticket prioritisé sur le tableau du projet, et découpez en tickets les exigences sans travail associé. Les agents de code reçoivent les identifiants dans le paquet de transmission, pour que leurs commits restent traçables.

FAQ

Vos questions, nos réponses

Que vérifie un audit de code ?

Deux choses. D’abord, que le livrable correspond aux exigences convenues. Ensuite, qu’il peut tourner sans danger : contrôle d’accès, secrets, dépendances avec avis connus, traitement des entrées, parcours de paiement et bases de l’exploitation comme la supervision et les sauvegardes.

Quelle différence avec une revue de code ?

Une revue de code examine un changement avant sa fusion. Un audit examine tout le système à un commit donné, au regard d’un périmètre donné, et produit des constats étayés et un verdict validé ou non.

Quand faut-il un audit de code ?

Avant un lancement ou une soumission sur un store, quand des développeurs externes ou un agent de code rendent leur travail, avant une due diligence et après des changements importants sur l’authentification, les paiements ou l’accès aux données.

Qu’est-ce qui rend un constat utile ?

Une gravité, un emplacement précis, une preuve qui montre le problème, les étapes pour le reproduire et un correctif proposé. Sans preuve, c’est une opinion : il n’a pas sa place dans le journal.

La checklist est-elle gratuite ?

Oui. Copiez-la ou téléchargez-la en Markdown sans créer de compte.

Pilotez toute l’entreprise depuis un seul endroit.

Commencez avec l’offre gratuite. Ajoutez votre équipe, votre agenda et votre code quand vous êtes prêt.