Formations JAVA/JEE

Sécurité des applications Java

Objectifs de la formation

  • Mettre en œuvre la sécurité au niveau de la machine virtuelle Java
  • Exploiter des infrastructures sécurisées modernes pour sécuriser ses applications
  • Sécuriser ses services web avec OAuth 2.0


Programme de la formation

Principes fondamentaux de la sécurité des applications Java

  • Introduction à la JVM.
  • Utilisation de versions récentes de Java (Java 17+).
  • Bytecode et obfuscation.
  • Gestion des dépendances avec Maven et détection des vulnérabilités dans les bibliothèques.
  • Mise en place d’un système de logging sécurisé (ex: SLF4J, Logback ou Log4J).

Gestion de l’authentification

  • Les diverses méthodes d’authentification (mot de passe, biométrique, clé numérique, etc.).
  • Utilisation du standard OAuth 2.0 pour une gestion moderne des accès.
  • JWT (JSON Web Tokens) pour la gestion des sessions sécurisées.
  • L’authentification multifacteurs (MFA).
  • Intégration d’un fournisseur d’identité.

Travaux pratiques

Mise en place d’un processus d’identification par mot de passe, d’une clé d’API et d’un token JWT avec Keycloak.

Contrôle d’accès et autorisations

  • Principe du moindre privilège dans les applications.
  • Utilisation de RBAC (Role-Based Access Control).
  • Implémentation de contrôles d’accès dans les applications. (Spring Security).

Travaux pratiques

Mise en place d’une section sécurisée basée sur le principe du moindre privilège avec Spring Security.

Utilisation de SSL/TLS

  • Utilisation de SSL/TLS pour sécuriser les communications.
  • Configuration sécurisée des connexions de bases de données (utilisation de SSL/TLS pour la connexion à MySQL/PostgreSQL).
  • Génération d’un certificat autosigné avec Java KeyStore.

Travaux pratiques

Génération d’un certificat autosigné avec KeyStore et hébergement d’une application avec SSL.

Sécurisation des données

  • SQL Injection : comment les éviter (utilisation des Prepared Statements, ORMs comme Hibernate).
  • Chiffrement des données sensibles dans la base de données.
  • Gestion des accès à la base de données (séparation des rôles et privilèges).
  • Gestion sécurisée des mots de passe (stockage avec des algorithmes comme MD5, SHA256 ou bcrypt).

Travaux pratiques

Création d’une base de données stockant des mots de passe chiffrés, connexions utilisateurs et utilisation de requêtes préparées.

Infrastructures sécurisées modernes

  • Les différents certificats HTTPS.
  • Principe de Zero trust models.
  • Sécurité Java au sein des conteneurs.
  • Les SIEMS.
  • Le protocole CORS.
  • Les architectures sécurisées par design.

Les différents types d’attaque

  • Validation des entrées utilisateur (Never Trust User Input).
  • Sécurisation des API RESTful avec des headers comme Authorization et X-XSS-Protection.
  • Injections SQL.
  • XSS et nettoyage des entrées utilisateurs.
  • CSRF (Cross-Site Request Forgery) : mise en place de tokens anti-CSRF.

Travaux pratiques

Nettoyage des données utilisateurs avec OWASP.

MOYENS PÉDAGOGIQUES ET TECHNIQUES D’ENCADREMENT DES FORMATIONS

Modalités pédagogiques :

  • Évaluation des besoins et du profil des participants.
  • Apport théorique et méthodologique : séquences pédagogiques regroupées en différents modules.
  • Contenus des programmes adaptés en fonction des besoins identifiés pendant la formation.
  • Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de travaux pratiques, étude de cas et mise en situation.
  • Méthodes expositive, active et participative.
  • Réflexion et échanges sur cas pratiques.
  • Retours d'expériences.
  • Corrections appropriées et contrôles des connaissances à chaque étape, fonction du rythme de l’apprenant mais également des exigences requises au titre de la formation souscrite.

Éléments matériels :

  • Mise à disposition des outils nécessaires au bon déroulement des travaux pratiques.
  • Support de cours au format numérique projeté sur écran et transmis au participant en fin de la formation.

Référent pédagogique et formateur :

  • Chaque formation est sous la responsabilité du directeur pédagogique de l’organisme de formation.
  • Le bon déroulement est assuré par le formateur désigné par l’organisme de formation.
MOYENS PERMETTANT LE SUIVI ET L’APPRÉCIATION DES RÉSULTATS
  • Feuilles de présences signées des participants et du formateur par demi-journée.
  • Attestation de fin de formation mentionnant les objectifs, la nature et la durée de l’action et les résultats de l’évaluation des acquis de la formation.
Please login to get access to the quiz
(Next Lesson) Développer avec les frameworks Java/Java EE
Back to Formations JAVA/JEE
Public

Développeurs et chefs de projets amenés à sécuriser des applications Java.

Pré-requis

Très bonnes connaissances du langage Java. Expérience requise en programmation Java.

Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en effectuant le test disponible en bas de cette page.

Lieu de formation

Intra-entreprise/à distance

Dates ou période

À définir. Nous consulter

Tarif

Sur devis. Merci de nous contacter

Modalités

Pour s’inscrire à notre formation, veuillez nous contacter par mail ou téléphone.

Démarrage de la formation sous deux semaines (délai indicatif).

Nous contacer
Informations complémentaires

Pour toute réclamation, aléas ou difficultés rencontrés pendant la formation, veuillez prendre contact avec notre organisme par téléphone ou par e-mail. Nous mettrons tout en œuvre pour trouver une solution adapter.

Formation synchrone, réalisée à distance en visioconférence via l’application Microsoft Teams ou en présentiel dans les locaux du client.

Sur le même thème