Java
Composants Java avancés
Sécurité des applications Java / JEE
Avis d'expert
Les moyens de sécurisation d'une application Java vont du contrôle du bytecode par la machine virtuelle jusqu'à la mise en œuvre de procédés d'authentification pour les applications JEE. Ce stage permet d'analyser les risques selon l'architecture applicative retenue, et de savoir choisir et mettre en œuvre les solutions adaptées : sécurisation de la JVM, chiffrement, certificats, sécurité JEE avec JAAS.
Objectifs pédagogiques
- Connaître les risques potentiels dans l'utilisation de Java, et les parades à mettre en œuvre
- Identifier les moyens de sécurisation disponibles et en particulier les PKI
- Savoir sécuriser une application Java/JEE de manière efficace
Public
Tout développeur souhaitant maîtriser la sécurité des applications Java / JEE.
Pré-requis
Il est demandé aux participants de connaître les notions de base du langage Java.
Méthode pédagogique
Les travaux pratiques accompagnant ce cours sont très nombreux et la gamme d'exercices corrigés proposés permettra à chacun de progresser à son rythme en fonction de ses connaissances préliminaires.
Programme pédagogique détaillé par journée
Jour 1
Jour 2
Jour 3 Besoins
Les risques.
Politique de sécurité.
Evaluation des risques en fonction des différents modes d'utilisation de Java (applets, applications, servlets).
Sécurisation de la JVM
Limites naturelles imposées par Java : gestion de la mémoire.
Contrôle du bytecode par la machine virtuelle.
Mise en œuvre du SecurityClassLoader.
Protection de l'exécution
Exécution protégée : SecurityManager, ClassLoader.
Surcharge des méthodes d'accès : lecture, écriture, exécution, ouverture de socket, autorisation de connexions...
Travaux pratiques : protection des accès sur le disque local d'une application.
Chiffrement
Les mécanismes de signature.
Création de clés publiques et privées.
Les clés RSA, DSA.
Signature d'un document.
Les algorithmes SHA1withDSA, MD5withRSA.
Les MessageDigest.
Les algorithmes MD2, MD5, SHA-1, SHA-512.
Travaux pratiques : vérification de l'authenticité d'un document.
Certificats
Cycle de vie d'un certificat. La fabrique de certificats Java.
Les certificats de modification X509.
Contrôle
Rappel sur les ACL.
Le paquetage java.security.acl.
Ajout d'entrée, vérification d'accès.
Obfuscation
Principe.
Techniques d'obfuscation.
Solutions commerciales.
JAAS
Présentation.
Fonctionnement et mise en œuvre.
Sécurité JEE
Exemples avec WebSphere et JBoss.
Le service de sécurité.
Sécurité Web et EJB.
Autorisations EJB 3.
Accès applicatifs et lien avec un annuaire LDAP.
Mise en œuvre des certificats avec JEE.











3 jours - 21 heures



