Sécuriser les interfaces publiques
Les bases
Authentification sur chaque route, même celles qui semblent peu intéressantes. Une vérification d'autorisation sur la ressource et non seulement sur la connexion. Une limite de débit par consommateur. Et une taille de requête limitée, y compris la profondeur d'imbrication.
L'exposition silencieuse
Des listes qui retournent plus de champs que nécessaire, un compte de résultats qui révèle l'existence, et des messages distinguant « n'existe pas » de « pas d'autorisation ». Les trois permettent de cartographier le système sans rien casser.
Ne retournez que ce qui est nécessaire, et gardez le comportement de refus cohérent.
Gérer les clés des consommateurs
Une clé par consommateur, des permissions définies, une capacité de révocation immédiate et une journalisation des usages. Et un document qui dit explicitement ce qui est autorisé avec l'interface et ce qui ne l'est pas.
Pour aller plus loin
Journalisez les requêtes rejetées et alertez sur les schémas : scan de routes, tentatives avec des identifiants séquentiels, un taux inhabituel depuis une source. La plupart des tentatives d'exploitation apparaissent dans ce bruit bien avant de réussir.