Formation Sécurité Java/JEE
Comprendre et mettre en place une politique de sécurité sur une application Java/JEE
Référence : SECURITE-JEE-02
Durée : 2 jour(s)
|
|
| Lieu |
Date de début |
Prix (HT) |
Formateur |
Réserver |
| Paris |
28 mars 2012 |
1200 €
|
Benoît Nouyrigat
|
|
| Paris |
30 mai 2012 |
1200 €
|
|
|
| Paris |
05 septembre 2012 |
1200 €
|
|
|
| Paris |
22 novembre 2012 |
1200 €
|
|
|
Objectifs
- Comprendre les besoins de sécurisation liés aux architectures des Systèmes d'information
- Comprendre les moyens de sécurisation disponibles et en particulier les PKI
- Savoir sécuriser une application Java/JEE de manière efficace
|
| Répartition : 40% Théorie, 60% Pratique |
| Public : Architecte, Développeur, Chef de projet |
| Pré-requis : Connaissance de Java |
Programme
Présentation
- La sécurité, une vieille histoire...
- Bob, Alice et Charly
Problématiques de sécurisation
- Identification
- Authentification
- Autorisation
- Confidentialité
- Non-répudiation
Techniques de sécurisation
- Chiffrement (DES, AES, ...)
- Code de hachage
- Signature (MD5, ...)
JCE : Java Cryptography Extension
- Mise en œuvre du chiffrement et du déchiffrement
- Mise en œuvre de la signature
- Configuration et choix des Security Provider
PKI : les Infrastructures à clef publique
- Différences entre une Clef, une Bi-Clef et un Certificat
- Illustration d'un envoi d'email avec thunderbird
- Les acteurs d'une PKI
- Autorités de Certification
- Exemples : Entrust, VeriSign, Thawte
- Créer votre propre AC
- Listes de révocation
- Où stocker toutes ces clefs ?
Keytool : le magasin de clefs Java
- Génération, manipulation, export et import de clefs et de certificats
SSL
- Le ou les finalités de SSL
- SSL simple / SSL mutuelle
- Procédure de Handshake
- Présentation de TLS
- HTTP + SSL = HTTPS
- Les Magasins de certificats de Internet Explorer et Firefox
JSSE : l'API SSL du monde Java
- Présentation de Java Secure Socket Extension
- Manipulation de certificats X.509
- Sécurisation d'un échange client/serveur
JAAS : Java Authentication and Authorization Service
- Présentation du principe et des acteurs JAAS
- Notion de Principal et de Subject
- Présentation de modules de Login classiques
- Exemples: Windows, LDAP, SGBD, ...
Sécurité de la JVM
- Sécurité liée au classloader
- Classloader par défaut
- Politique de chargement des classes
- Créer votre propre classloader
- Garantir l'intégrité du code par signature
- Inconvénients du ByteCode : décompilation et obfuscation de code
- Apprendre à activer le SecurityManager
- Définir des politiques d'accès grâce aux JavaPolicy (*.policy)
- Mettre en œuvre les SecurityPermissions
- Présentation du Bac à sable (sandbox)
- Cas des Applets
- Cas des applications JavaWebStart
Sécurité d'une application JEE
- Une sécurité basée sur les rôles (security role based)
- Notion de Realm : JDBC, LDAP, XML, ...
- Sécurité déclarative par Security Contraints dans les descripteurs de déploiement
- Sécurité programmative par l'utilisation d'API dans le code applicatif
- Sécurisation des EJB et des Applications Web
- Exemple de configuration du container web Tomcat
- Problématique d'accès aux autres acteurs : Exemple avec la base de données
Moyens d'authentification standards
Introduction à la Sécurité matérielle
- Hub et Switch
- Firewall et DMZ
- Ouverture de ports
- Système d'exploitation
- Proxy / Reverse Proxy
- Réseaux privés et VPN
|
| * Les livres sont offerts uniquement pour les formations inter-entreprise. Zenika se réserve le droit de changer le livre proposé à tout moment. |
|
| Offert en inter-entreprise |
| >>Le petit déjeuner (croissants, jus d'orange, café) |
| >>Le déjeuner |
| >>Une qualification téléphonique si nécessaire avec l'un de nos consultants |
|
|
|