Java EE, sécurité des applications

Présentation de la formation

Cette formation vous permettra d’appréhender les mécanismes de gestion de la sécurité proposés par Java, grâce à l’étude théorique des concepts et à leur mise en œuvre progressive, au sein d’applications autonomes, de serveurs d’applications JEE ainsi que de services Web SOAP et REST.

Programme de la formation

Objectifs pédagogiques

  • Mettre en œuvre la sécurité au niveau de la machine virtuelle Java
  • Exploiter des API spécifiques telles que JAAS, JSSE et JCE pour sécuriser vos applications.
  • Sécuriser vos services Web avec les API WS-Security et oAuth

Pré-requis

  • Très bonnes connaissances du langage Java. Bonnes connaissances des concepts JEE. Expérience requise en programmation Java.

Contenu de la formation

Présentation des concepts liés à la sécurité

  • 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.

 

Sécurité de la machine virtuelle Java

  • Chargement des classes. Concept de “bac à sable”.
  • SecurityManager, AccessController et définition des permissions (fichiers .policy).
  • Créer ses permissions avec Java Security Permission.
  • Mécanismes de protection de l’intégrité du bytecode, la décompilation et l’obfuscation du code.
  • Spécificités des Applets en matière de sécurité.

 

Travaux pratiques
Définition de.policy spécifiques.

 

Java Authentication and Authorization Service

  • Architecture de JAAS.
  • Authentification via le PAM, notion de Subject et de Principal.
  • Gestion des permissions, les fichiers .policy.
  • Utiliser JAAS avec Unix ou Windows, JNDI, Kerberos et Keystore. Le support du SSO.

 

Travaux pratiques
Configurer la politique de contrôle d’accès, mise en œuvre de l’authentification.

 

SSL avec Java

  • Fonctions de Java Secure Socket Extension (JSSE).
  • Authentification via certificats X.509. TLS et SSL.
  • Encryption à base de clés publiques, Java Cryptography Extension (JCE).
  • Utilisation de SSL avec HTTP.

 

Travaux pratiques
Configurer SSL et mise en œuvre 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, JNDI, JTA, JMS, JCA.

 

Travaux pratiques
Sécurité d’une application déployée dans Tomcat.

 

La sécurité des services Web SOAP

  • 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.

 

Travaux pratiques
Mise en pratique avec une implémentation de WS-Security (XWSS).

 

La sécurité des services Web REST

  • Utilisation de SSL avec JAX-RS.
  • Les apports de oAuth (authentification sur Internet).
  • oAuth 1.0 et 2.0.

 

Travaux pratiques
Mise en pratique avec une implémentation Apache CXF de JAX-RS.

Méthodes & moyens

Explications théoriques suivies de pratiques guidées puis mises en autonomie

  • 1 vidéoprojecteur par salle
  • 1 ordinateur par stagiaire

Profil du formateur

Nos formateurs sont certifiés à l’issue d’un parcours organisé par nos soins. Ils bénéficient d’un suivi de compétences aussi bien au niveau technique que pédagogique.

Devis

    captcha

    Formation Angular 8 Initiation

    formation angular 8

    Infos Pratiques

    Durée : 3 jours
    Prix : A définir
    Lieu: A définir

    Contactez Nous

      captcha

      Formations Planifiées Prochainement

      Comments are closed.