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

  1. Architecture n-tiers, applications et APIs
  2. Les différences essentielles entre une API REST et API SOA
  3. H.A.T.E.O.A.S Gestion des ressources et liens d’hypermédia.

Travaux-pratiques :

Chapitre 2 : Bonnes pratiques

  1. Conventions et bonnes pratiques
  2. Techniques et Stratégies de versioning
  3. Bonnes approches de conception et de développement

Travaux-pratiques :

Chapitre 3 : La boîte à outils

  1. API Mock
  2. Conception APIs REST avec OpenAPI et Swagger
  3. Utilisation de Postman ou Insomnia
  4. Environnement de test et outils (JSONGenerator – JSON server)

     Travaux-pratiques : 

Chapitre 4 : Rappels sur la sécurité

  1. Les grands principes de la sécurité informatique. Menaces et impacts potentiels.
  2. Spécificités des APIs : Farming et Throttling.
  3. BFA et IA : les nouvelles menaces.
  4. Les différentes injections (XSS, BSI, XSRF, RFI, XPi,…).
  5. Exposition de données sensibles. Sécurisation des accès.
  6. Désérialisation non sécurisée. Composants vulnérables.
  7. Logging et monitoring.
  8. Présentation de l’OWASP TOP 10.
  9. Découvrir le Pentesting.
  10. Introduction à Restler-Fuzzer.

     Travaux-pratiques : 

Chapitre 5 : Authentification et autorisation

  1. Sécurité de l’authentification
  2. Système de logging
  3. Sécurité côté serveur
  4. CORS et CSRF
  5. Canonicalization,Escaping et Sanitization
  6. Gestion des permissions
  7. 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)

  1. Rappels sur la cryptographie
  2. Les grands principes de JWT
  3. 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)

  1. Rappels sur la cryptographie
  2. Les grands principes de JWT
  3. Risques et vulnérabilités intrinsèques.

Travaux-pratiques :   Tester une API avec Postman

Chapitre 8 :  API Management

  1. Les avantages des solutions d’API Management
  2. GRAVITEE : APIm opensource moderne et efficace
  3. API Access Management

Travaux-pratiques :   Utiliser une solution d’API Management.