Organisme de Formation aux technologies et métiers de L'informatique

Formation REST API, conception, architecture et sécurité

Informations générales

REH
3 jours (21h)
2 070 €HT
repas inclus

Objectifs

Après ce cours, vous serez capable de :

  • 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
  • Maitriser les bonnes pratiques de conception, de développement et d’architecture des APIs ReST

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Développeurs Web Front-end et Back-end, architectes, chefs de projet techniques.

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Connaissances HTTP, bonne culture Web.
  • Idéalement quelques connaissances en développement Web : JavaScript/HTML.

Programme de la formation

Les services web conformes au style d'architecture REST établissent une interopérabilité entre les ordinateurs sur Internet. Vous pourrez découvrir les bonnes pratiques de conception, de développement, les outils associés ainsi que les vulnérabilités les plus communes et les meilleurs moyens de s’en prémunir.

Introduction aux APIs ReST

  • L’écosystème moderne.
  • Roy Thomas FIELDING : père du ReST.
  • Richardson’s maturity model ou Web Service Maturity Heuristic.
  • H.A.T.E.O.A.S., Resource Linking and Semantic Web.
  • Travaux pratiques : Conception d’une API flexible, scalable, résiliente et performante.

Conventions et bonnes pratiques

  • Pragmatisme, idéologie et ReSTafarians.
  • Les conventions.
  • Les différentes approches de versioning.
  • Tips, tricks et bonnes pratiques de conception et de développement.
  • Les “standards” ou presque.
  • Travaux pratiques : Conception d’une API ReST.

La boîte à outils

  • Conception d’APIs ReST avec OpenAPI et Swagger.
  • Debug et testing avec Postman.
  • Sandbox. JSON Generator. JSON Server.
  • Travaux pratiques : Spécification d’une API ReST avec Swagger. Test d’une API ReST avec Postman. Implémentation d’une API ReST.

Rappels sur la sécurité

  • Menaces et impacts potentiels.
  • Les 4 principes de la sécurité informatique.
  • Présentation de l'OWASP TOP 10.
  • Travaux pratiques : Présentation d’une solution IA en mode SaaS V6Protect : vulnerability management, Web , Next-Gen WAF,Alerting , Security Score.

Authentification et autorisation

  • Sécurité de l’authentification.
  • Système de logging.
  • Sécurité côté serveur.
  • CORS (Cross-Origin Resource Sharing) et CSRF (Cross-Site Request Forgery).
  • Canonicalization, Escaping et Sanitization.
  • Gestion des permissions : Role-Based Acces vs. Resource-based access.
  • Authentification avec OAuth2 et OpenID Connect : vocabulaire et workflow.
  • Travaux pratiques : Recherche et exploitation de vulnérabilités d’authentification et d’autorisation avec Websheep.

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.

Les Tests d’API

  • Les 10 domaines de tests d’une API.
  • Avantages et limites des tests d’API one shot.
  • Construire une API Testable by design.
  • Les tests de durcissement.
  • Les exigences en tests de conformité d’API.
  • Les pratiques éprouvées pour réduire les coûts des tests.
  • Travaux pratiques : Tests d’une API avec Postman, création d’un scénario de test Data Driven, et intégration CLI dans Newman.

API Management

  • Intérêts et fonctionnalités des solutions d’API Management.
  • API management dans le Cloud avec Apigee.
  • API management On Premise avec Kong.
  • Travaux pratiques : Utiliser une solution d’API Management pour déployer une API.
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 08/11/2023