Autoriser au niveau de l’objet, de la propriété et de la fonction
Documentation, autorisation par objet, quotas et consommation sûre d’API tierces.
Ce qu’il faut faire
Vérifier pour chaque appel que l’appelant peut accéder à cet objet, à ces champs et à cette fonction ; ne jamais renvoyer plus de champs que nécessaire.
La preuve à réunir
Tests avec les identifiants d’un autre client et avec des champs non autorisés.
Textes et normes de référence
- OWASP API Top 10 2023API1:2023Broken Object Level Authorization
- OWASP API Top 10 2023API3:2023Broken Object Property Level Authorization
- OWASP API Top 10 2023API5:2023Broken Function Level Authorization
Questions fréquentes
Que faut-il faire concrètement ?
Vérifier pour chaque appel que l’appelant peut accéder à cet objet, à ces champs et à cette fonction ; ne jamais renvoyer plus de champs que nécessaire.
Comment prouver que c’est fait ?
Tests avec les identifiants d’un autre client et avec des champs non autorisés.
Sur quels textes repose ce contrôle ?
OWASP API Top 10 2023, API1:2023 (Broken Object Level Authorization) ; OWASP API Top 10 2023, API3:2023 (Broken Object Property Level Authorization) ; OWASP API Top 10 2023, API5:2023 (Broken Function Level Authorization).