REST API, conception, architecture & sécurité
Cours pratique de 3 jours
Tarif par participant :
1590 HT
Objectifs
- Prendre en main les outils qui vous accompagneront de la conception au déploiement et la supervision de vos APIs
- Appréhender les menaces auxquelles s’exposent vos API
- Identifier les vulnérabilités les plus fréquentes
- Repérer les points faibles d’une API puis la protéger
- Maîtriser les bonnes pratiques de conception, de développement et d’architecture des APIs REST
Prérequis
- Accès à un environnement de développement (IDE, outils de build).
Le programme
Chapitre 1: Introduction aux APIs REST
- Architecture n-tiers, applications et APIs
- Les différences essentielles entre une API REST et API SOA
- H.A.T.E.O.A.S Gestion des ressources et liens d’hypermédia.
Travaux-pratiques :
Chapitre 2 : Bonnes pratiques
- Conventions et bonnes pratiques
- Techniques et Stratégies de versioning
- Bonnes approches de conception et de développement
Travaux-pratiques :
Chapitre 3 : La boîte à outils
- API Mock
- Conception APIs REST avec OpenAPI et Swagger
- Utilisation de Postman ou Insomnia
- Environnement de test et outils (JSONGenerator – JSON server)
Travaux-pratiques :
Chapitre 4 : Rappels sur la sécurité
- Les grands principes de la sécurité informatique. Menaces et impacts potentiels.
- Spécificités des APIs : Farming et Throttling.
- BFA et IA : les nouvelles menaces.
- Les différentes injections (XSS, BSI, XSRF, RFI, XPi,…).
- Exposition de données sensibles. Sécurisation des accès.
- Désérialisation non sécurisée. Composants vulnérables.
- Logging et monitoring.
- Présentation de l’OWASP TOP 10.
- Découvrir le Pentesting.
- Introduction à Restler-Fuzzer.
Travaux-pratiques :
Chapitre 5 : Authentification et autorisation
- Sécurité de l’authentification
- Système de logging
- Sécurité côté serveur
- CORS et CSRF
- Canonicalization,Escaping et Sanitization
- Gestion des permissions
- Authentification avec OAuth2 et OpenID Connect : Vocabulaire & Workflow
Travaux-pratiques : Recherche et exploitation de vulnérabilités d’authentification et d’autorisation
Chapitre 6 : Middleware et JWT (JSON Web Token)
- Rappels sur la cryptographie
- Les grands principes de JWT
- Risques et vulnérabilités intrinsèques.
Travaux-pratiques : Challenge sur une API non sécurisée.
Chapitre 7 : Middleware et JWT (JSON Web Token)
- Rappels sur la cryptographie
- Les grands principes de JWT
- Risques et vulnérabilités intrinsèques.
Travaux-pratiques : Tester une API avec Postman
Chapitre 8 : API Management
- Les avantages des solutions d’API Management
- GRAVITEE : APIm opensource moderne et efficace
- API Access Management
Travaux-pratiques : Utiliser une solution d’API Management.