Maîtrisez l’authentification, les autorisations et la protection des API avec Spring

Dans un contexte d’architectures modernes (API REST, SPA, micro-services), la sécurité applicative est plus stratégique que jamais. Spring Security s’impose comme le framework de référence pour gérer l’authentification, les autorisations, et la protection contre les menaces courantes au sein de l’écosystème Spring Boot. Cette formation vous guide pas à pas à travers les concepts fondamentaux : identité et rôles, filtres de sécurité, attaques courantes (CSRF, XSS), et vous montre comment appliquer les bonnes pratiques pour combattre ces vulnérabilités. Vous apprendrez à sécuriser différents types d’applications (frontend MVC, API REST, clients JavaScript) en utilisant divers modes d’authentification (formulaire, session, JWT, OpenID Connect) et en appliquant une gestion fine des droits. Des ateliers concrets vous permettront de connecter l’application à une base d’utilisateurs, d’implémenter une stratégie adaptable selon le type de client, et de valider votre configuration par des tests automatisés via spring-security-test. Une formation clé pour tout développeur ou architecte souhaitant livrer des applications Java réellement sécurisées.

Le programme de la formation

 

Introduction

  • Les modes d’authentification: basic, formulaire de login, session, jeton, kerberos.
  • Présentation du bean SecurityFilterChain et des filtres qui le composent.
  • Les beans créés automatiquement par Spring Boot.
  • La représentation de l’identité de l’utilisateur: l’interface Principal.
  • Les attaques CSRF et XSS.

La déclaration d’un référentiel d’utilisateurs

  • Les concepts: user, role, authority.
  • Les interfaces UserManager et GroupManager.
  • La déclaration d’un bean UserDetailsService pour répondre aux demandes d’authentification.
  • Le choix d’un algorithme de hachage des mots de passe.

Mise en pratique: déclaration d’une base de données comme référentiel d’utilisateurs et de rôles.

La sécurité par session

  • Les cookies comme moyens d’établir des sessions.
  • La protection contre les attaques XSS et CSRF.
  • Mise en place pour une API REST.
  • Mise en place pour une IHM MVC.
  • Stockage externalisé des informations de sessions pour rendre l’application stateless.

Mise en pratique: activation de la sécurité par session sur un frontend Spring MVC, protection contre les attaques CSRF.

La sécurité par jeton

  • Présentation du standard JWT.
  • Le bean JwtDecoder.
  • L’émission et la signature des jetons: clés symétriques ou asymétriques.
  • Couplage avec un serveur OpenID Connect.
  • Points sensibles: révocations, gestion des rôles.
  • Protection contre le vol des jetons par attaque XSS dans une single page application.
  • Le pattern ‘token relay’ dans une architecture micro-services.

Mise en pratique: couplage de Spring avec un serveur OpenID Connect, application d’une stratégie de refus des jetons révoqués.

Autorisations

  • Règles d’accès aux routes.
  • Règles d’accès aux méthodes.
  • Règles d’accès aux éléments d’une vue.

Mise en pratique: sécurisation des routes d’une application web et des pages d’un frontend MVC.

Les tests

  • Test d’une méthode ou une API en tant qu’un utilisateur authentifié.
  • Le rôle des SecurityMockMvcRequestPostProcessors.

Mise en pratique: utilisation de spring-security-test pour tester l’application sécurisée précédemment.

À qui s’adresse cette formation ?

Pour qui

  • Développeurs et architectes.

Prérequis

  • Ce cours demande une connaissance solide des bases de la programmation Java (principes de la programmation orientée objet, types génériques, annotations, expressions lambda), une habitude de travailler avec Eclipse ou IntelliJ.

Les objectifs de la formation

  • Permettre aux développeurs et architectes de concevoir, mettre en œuvre et tester une stratégie de sécurité robuste dans une application Java basée sur Spring Boot, en maîtrisant les mécanismes d’authentification, d’autorisation et de protection contre les vulnérabilités courantes. Savoir adapter cette stratégie selon le type de client (web, SPA, API REST) et dans le cadre d’architectures distribuées (SSO, micro-services).

Méthode pédagogique

•    Choisir un protocole d’authentification;
•    Apprécier les qualités d’un algorithme de hachage de mots de passe;
•    Protéger une application web contre les attaques CSRF;
•    Sécuriser une API REST avec JWT;
•    Coupler une application web à un serveur OpenID Connect;
•    Appliquer des règles d’autorisations;
•    Tester une application sécurisée.

Durée: 1 Jour

Réference FMF274TI
Prix 4 490,00 DH HT


S’INSCRIRE EN INTER

Date 27 octobre 2025 à 14:00
15 décembre 2025 à 14:00
3 mars 2026 à 14:00
17 juillet 2026 à 14:00

Lieu Classe virtuelle





Copyright Technologia 2025 – Tous droits réservés

Contactez-nous