- Référence : JSJA
- Durée : 3 jours (21h)
- Lieu : Au choix. À distance ou en présentiel, à Paris ou en Régions
1690€ HT
Choisir une date et RéserverVous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...
Le langage Java contient intrinsèquement de nombreux mécanismes permettant l'élaboration de programmes sûrs. Ces mécanismes couvrent différentes facettes de la sécurité comme l'intégrité, la confidentialité, l'identification sûre ou la protection contre les malveillances.
Cette formation Sécurité des applications Java permet de passer en revue ces différents sujets et propose à chaque fois des ateliers pédagogiques permettant de comprendre en profondeur les mécanismes d'exécution de la JVM. Le dernier chapitre se concentre sur les spécificités des applications web Java EE en détaillant SSL, le modèle de sécurité des différents tiers ainsi que les spécificités des architectures SOA.
Objectif opérationnel :
Savoir sécuriser des applications Java.
Objectifs pédagogiques :
A l'issue de cette formation Sécurité des applications Java vous aurez acquis les connaissances et compétences nécessaires pour :
Public :
Cette formation Sécurité Java s'adresse à des Développeurs ou Chefs de projet.
Prérequis :
Il est demandé aux participants de connaître les notions de base du langage Java.
Identification et méthodes d'authentification.
Autorisations et permissions.
Confidentialité, non-répudiation, cryptage, clés publiques/privées, autorités de certification.
Pare-feu et DMZ, rupture de protocole.
Les types d'attaques.
Le modèle de sécurité de la JVM
Un des premiers mécanismes implémentés par la JVM est de s'assurer que le code chargé en mémoire ne peut contourner les mécanismes de protection du langage.
Rôle du compilateur Java
Rôle des classloader
Les différentes zones mémoires de la JVM et leur gestion par le garbage collector
Hiérarchie des différents classloader
Vérification du byte-code
Chargement dynamique ce classe
Implémenter un class loader
Atelier
Modification d'un fichier .class et exécution avec l'option -noverify, Implémentation d'un classloader chargeant des classes cryptées.
Le principe du XSS (injection de contenu)
Liens avec les programmes Java
Déclinaisons (Stored XSS, Reflected XSS, DOM-based XSS)
Nouvelles "possibilités" avec le HTML 5
Atelier
Exemples d'hameçonngae et de récupération de cookies.
Les permissions et le gestionnaire de sécurité permettent de contrôler finement les autorisations d'un programme et ses interactions avec son environnement.
Opérations contrôlables
Activation du gestionnaire de sécurité
Domaine de protection, provenance du code et permissions
Parcours de l'API
Fichier .policy
Les classes Permission
Implémentation d'une classe Permission
Atelier
Mise au point d'un fichier .policy, implémentation d'une classe Permission.
JAAS offre les services d'authentification et d'autorisations des utilisateurs ou systèmes externes interagissant avec l'application tout en restant du indépendant de la technologie d'authentification.
Présentation de JAAS
LoginContext / LoginModule, Configuration et empilement des login modules
LoginModule communément disponibles
Implémentation d'un login module spécifique, les CallbackHandler
Autorisations, Objet Subject et Principals, Configuration des permissions
Atelier
Implémentation d'un LoginModule, Configuration des autorisations à partir de rôles utilisateurs.
Les techniques de cryptographie permettent de garantir la provenance d'un code et sa non altération.
Empreinte de messsage, SHA1 et MD5
Signature numérique, clé publiques et clés privées
L'outil keytool et les keystore
L'outil jarsigner
Les autorités de certification
Déploiement de code signé dans un intranet ou sur internet
Permissions basées sur des keystore
Chiffrement de données, les algorithmes AES et RSA
AtelierVérification d'une empreinte, Déploiement d'un applet dans un intranet, Chiffrement symétrique et asymétrique.
Fonctions de Java Secure Socket Extension (JSSE). Comparaison avec Java GSS-API
Authentification via certificats X.509. TLS et SSL.
Encryption à base de clés publiques, Java Cryptography Extension (JCE).
Utilisation de SSL avec HTTP.
Atelier - Configurer SSL et mise en oeuvre de sockets SSL. Utiliser des outils du JDK (Keystore).
La sécurité d'une application JEE
Authentification au niveau des conteneurs Web et EJB.
Rôles applicatifs, permissions et descripteurs de déploiement XML.
Contrôles dynamiques via les API Servlets et EJB.
La sécurité dans les API : JDBC/JPA, JNDI, JTA, JMS, JCA.
Atelier
Sécurité d'une application déployée dans Tomcat.
Sécurité au niveau HTTP.
Sécurité au niveau SOAP & WSDL avec WS-Security (WSS4J, XWSS...) & WS-Policy.
Les handlers SOAP WS-Security exploitant JAAS.
Atelier
Mise en pratique avec une implémentation de WS-Security (XWSS).
Utilisation de SSL avec JAX-RS.
Les apports de oAuth (authentification sur Internet).
oAuth 1.0 et 2.0.
Atelier
Mise en pratique avec une implémentation Apache CXF de JAX-RS.
Les travaux pratiques utilisent l'IDE Eclipse.
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.
Mon avis sur le formateur :
"Formateur très compétant avec beaucoup d'expérience "
Mon avis sur la salle de formation :
"Un support de formation couleur aurait été préférable"
Mon avis sur la salle de formation :
"Rien a signalé tout était ok"
Ce que j'ai le plus apprécié :
"les travaux pratique et certaines parties theoriques"
Mon avis sur la salle de formation :
"Bon dans l'ensemble"
Ce que j'ai le plus apprécié :
"Salle adéquate, sécurisée et conforme"
Mon avis sur le contenu du stage :
"La formation s'est bien déroulée; l'animateur maitrise son sujet et a l'expérience dans le développement d'application java/j2ee."
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