Formation Spring Security

Sécuriser vos applications Java

4.4 sur 5 étoiles

5 étoiles
40%
4 étoiles
60%
3 étoiles
0%
2 étoiles
0%
1 étoile
0%
Voir les 5 avis
(5 avis)
Durée 3 jours
Niveau Intermédiaire
Classe à distance
Possible

Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...

Référence SSEC
Éligible CPF Non

Spring Security est le sous-projet Spring dédié à la sécurité. Indépendant de JavaEE, il offre un environnement complet pour sécuriser tout type d’application Java : application web, back-end REST ou autre.

Objectif opérationnel :

Savoir sécuriser une application Java en utilisant les bonnes pratiques de gestion d'authentification d'autorisation avec Spring Security.

Objectifs pédagogiques :

À l'issue de cette formation Spring Security, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Maitriser les concepts de base de Spring Security
  • Configurer Spring Security dans une application Java
  • Mettre en place une authentification par session
  • Gérer les rôles et autorisations de vos utilisateurs
  • Personnaliser la configuration de Spring Security
  • Intégrer des solutions d'authentification OAuth2 et JWT
  • Appréhender les vulnérabilités de sécurité et configurer des filtres de protection

Public :

Ce cours s'adresse à tout développeur ou architecte logiciel souhaitant sécuriser efficacement des applications web développées avec Java. Elle est particulièrement adaptée aux développeurs désireux de maîtriser les mécanismes d'authentification et d'autorisation dans une architecture Spring, ainsi qu'aux ingénieurs en sécurité souhaitant intégrer des pratiques de sécurité robustes dans des projets Java.

Prérequis :

Les participants à cette formation Spring Security doivent avoir une bonne maîtrise du langage Java ainsi qu'une expérience pratique dans le développement d'applications web. La formation ne prévoit pas de revenir sur les bases de la programmation Java.

Cependant, il n’est pas nécessaire d’avoir une connaissance approfondie en matière de sécurité des applications, car la formation introduit progressivement les concepts clés d'authentification et d'autorisation avant de les appliquer avec Spring Security.

Rappel sur le framework Spring

Comprendre les avantages de Spring en Java
Intégrer J2EE et le framework Spring Boot
Comprendre le rôle et le fonctionnement des dépendances dans le cycle de vie d'une application
Travaux pratiquesObjectif : Mettre en place rapidement une application Spring Boot basique
Description : Initialisation du projet avec Spring Initializr
Création de controller basiques

Introduction à Spring Security

Comprendre le rôle de Spring Security (authentification, autorisation, sécurité)
Appréhender l'architecture de Spring Security (Pare-feu HTTP, DelegatingFilterProxy, SecurityFilterChain)
Travaux pratiquesObjectif : Configurer Spring Security dans une application Spring Boot
Description : Mise en place de la configuration nécessaire dans l'application
Création de la SecurityFilterChain

Gestion de l'authentification

Découvrir les différents mécanismes d'authentification
Maitriser l'authentification par session
Travaux pratiquesObjectif : Mettre en place une authentification par session basique
Description : Mise en place d'une authentification simple par session de type username / password 
Mise en place de filtres basiques dans la SecurityFilterChain selon le rôle de l'utilisateur

Autorisations

Types de sécurisation, mécanismes des intercepteurs
Beans impliqués : AccessDecisionManager, AccessDecisionVoter
ACLs sur requêtes, expression d’URL
ACLs sur la couche service : alternatives, syntaxe des expressions
Travaux pratiquesObjectif : Mettre une place une authentification par session liée à une base de données
Description : Mise en place d'une base de données utilisateur
Attribution des autorisations selon le rôle de l'utilisateur grâce à un UserDetailService personnalisé
Configuration de l'AuthenticationManager

Roles vs. Authorités

Maîtriser la différence entre rôles et autorisations
Gérer des rôles multiples
Mettre en place une hiérarchie de rôle
Utiliser les annotations pour gérer les autorisations
Travaux pratiquesObjectif : Lier autorisations et rôles dans la gestion des droits utilisateurs
Description : Mise en place de rôles multiples avec leurs autorisations propres
Création d'une hiérarchie de rôle
Utilisation des annotations pour la gestion des droits

Personnalisation de la configuration

Utiliser les mécanismes de redirection
Ajouter des pages personnalisées pour la gestion des erreurs courantes
Comprendre l'utilisation d'une authentification par mémoire (RememberMe)
Personnaliser les différents formats de chiffrement des mots de passe (PasswordEncoder)
Travaux pratiquesObjectif : Personnaliser la configuration de Spring Security
Description : Mise en place de redirection suite à la connexion ou déconnexion de l'utilisateur
Ajout d'une page personnalisée pour les erreurs type 403
Mise en place d'une authentification par mémoire (RememberMe) grâce aux cookies
Mise en place de la gestion de différents formats de chiffrement de mot de passe grâce au DelegatingPasswordEncorder (Bcrypt, No0p, Sha256)

Les tests avec Spring Security

Revoir les méthodes de tests avec Spring
Maitriser l'implémentation de test permettant de vérifier les droits d'accès des utilisateurs
Travaux pratiquesObjectif : Tester les droits d'accès des utilisateurs
Description : Mise en place des tests selon les rôles et autorisations définies

Authentification OAuth

Comprendre le mécanisme d'authentification par token
Appréhender OAuth2 Client pour bénéficier d'une connexion par un tiers
Comprendre le fonctionnement d'OpenID Connect dans le partage des données utilisateur
Travaux pratiquesObjectif : Mettre en place une connexion OAuth2 fournit par un tiers
Description : Mise en place d'OAuth2 avec GitHub, Google et / ou Facebook
Manipulation d'OIDC pour récupérer les données utilisateurs classiques

Authentification JWT

Comprendre la distinction entre Authorization Server et Ressource Server
Appréhender le chiffrement d'un token
Comprendre le flux d'une connexion par token (Basic Login)
Travaux pratiquesObjectif : Mettre en place un serveur d'autorisation et un serveur de ressources
Description : Mise en place d'un serveur d'autorisation et d'un serveur de ressources
Configuration des serveurs
Gestion d'une clé JWT symétrique

Failles de sécurité

Appréhender les attaques web les plus communes (OWASP)
Gérer les filtres CORS et CRSF dans Spring Security pour se prémunir
Travaux pratiquesObjectif : Mettre en place des filtres CORS et CRSF
Description : Configuration des filtres CORS et CRSF
Date de mise à jour du programme : 28/02/2025

Dates et lieux

Du 25 au 27 juin 2025
Lieu
Distanciel
Durée
3 jrs
1990 € HT
Du 25 au 27 juin 2025
Lieu
Paris
Durée
3 jrs
1990 € HT
Du 24 au 26 septembre 2025
Lieu
Distanciel
Durée
3 jrs
1990 € HT
Du 24 au 26 septembre 2025
Lieu
Paris
Durée
3 jrs
1990 € HT
Du 29 au 31 décembre 2025
Lieu
Distanciel
Durée
3 jrs
1990 € HT
Du 29 au 31 décembre 2025
Lieu
Paris
Durée
3 jrs
1990 € HT

Avis des participants à la formation Spring Security

Note moyenne de 4.4/5(5)

Les avis figurant ci-dessous sont issus des fiches d’évaluation que remplissent les participants à la fin de la formation. Ils sont ensuite publiés automatiquement si les personnes ont explicitement accepté que nous les diffusions.

SV
4/5

Mon avis sur le contenu du stage :

"Support de cours et travaux pratiques très fournis. Solutions et exemples de code présents au cas où on décroche ou on prend du retard, ce qui est un plus"

Mon avis sur le formateur :

"Bon tempo dans la présentation, ni trop vite ni trop lent et animateur à l'écoute"

Mon avis sur la salle de formation :

"À distance"

MA
5/5

Mon avis sur le contenu du stage :

"Très bonne formation, adaptée à un niveau débutant"

Mon avis sur la salle de formation :

"Formation en ligne"

DQ
4/5

Mon avis sur le formateur :

"Bon formateur, disponible et avec une bonne connaissance de ce qu'il enseigne. Parfois un peu rapide."

LGG
4/5

Mon avis sur le formateur :

"Bon formateur, disponible, à l'écoute et s'intéresse au sujet des participants."

BENSLIMANE Amine
5/5

Mon avis sur le contenu du stage :

"Excellente formation avec Mr David Thibau"

Ces formations peuvent aussi vous intéresser :

  • Niveau : Intermédiaire
  • Référence : SJBA

  • Niveau : Intermédiaire
  • Référence : SSEA

Initier des applications d'IA générative à l'aide du framework Spring

  • Niveau : Fondamental
  • Référence : SJIA

  • Niveau : Intermédiaire
  • Référence : SKDS


Formations Informatique
et Management
en ligne à ce jour

+
Stagiaires dans nos salles
de cours sur
l'année

%
De participants satisfaits
ou très satisfaits de nos
formations


Formateurs experts
validés par
PLB