TI284
Technologies de l'information

Sécurité Java

Maîtriser la sécurité Java : classloaders, permissions, authentification, chiffrement et sécurité web


Le langage Java contient intrinsèquement de nombreux mécanismes permettant l'élaboration de programmes sûrs. Ces mécanismes concernent les différentes facettes de la sécurité comme l'intégrité, laconfidentialité, l'identification et la protection contre les malveillances.

Objectif

L'objectif de cette formation est de permettre aux participants d’acquérir une compréhension complète de la sécurité des applications Java : identification des vulnérabilités, utilisation des API de sécurité (JCE, JAAS), mise en œuvre de pratiques de codage sécurisées et de mécanismes de cryptographie, d’authentification et d’audit. Elle intègre également les meilleures pratiques de développement sécurisé et la gestion des incidents et des risques.

Est-ce pour vous ?

Développeurs, concepteurs, chefs de projets, architectes techniques

Préalables

Avoir une expérience de programmation en langage JAVA.

Vos gains

  • Maîtriser les mécanismes de sécurité de la JVM : classloaders, vérification du bytecode et gestion mémoire
  • Configurer et appliquer des politiques de sécurité avec le gestionnaire de sécurité et les permissions Java
  • Implémenter des solutions d’authentification et d’autorisation avec JAAS et gestion des rôles
  • Sécuriser les applications avec signatures numériques, keystores et chiffrement AES/RSA
  • Identifier les vulnérabilités web (OWASP) et réaliser des audits dynamiques avec des outils spécialisés
  • Contenu

    Introduction et rappels

    Chargement et vérification des classes

    • 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 de classe
    • Implémenter un class loader
    • T.P. : Modification d'un fichier .class et exécution avec l'option -noverify, Implémentation d'un classloader chargeant des classes cryptées
    Voir plus +/-

    Gestionnaire de sécurité et permissions

    • 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
    • T.P. : Mise au point d'un fichier. policy, implémentation d'une classe Permission

    JAAS, Authentification et Autorisations

    • Présentation de JAAS
    • LoginContext et LoginModule
    • Configuration et empilement des login modules
    • LoginModule disponibles
    • Implémentation d'un login module spécifique, les CallbackHandler
    • Packaging d'un login module
    • Autorisations, Objet Subject et Principals
    • Interface PrivilegedAction
    • Configuration des permissions
    • T.P. : Implémentation d'un LoginModule, Configuration des autorisations à partir de rôles utilisateurs

    Signatures numériques et chiffrement

    • Empreinte de messsage : SHA1 et MD5
    • 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
    • T.P. : Vérification d'une empreinte, Déploiement d'une applet dans un intranet, Chiffrement symétrique et asymétrique

    Application de la sécurité dans un environnement Web

    • Sécurisation d'un serveur applicatif Java
    • Sécurisation d'un serveur applicatif Java
    • Authentification des utilisateurs, descripteur de déploiement d'une application web
    • Configuration des logins modules dans les principaux serveurs applicatifs
    • Sécurité déclarative des différents tiers de Java EE
    • SSL
    • T.P. : Sécurisation d'une application web

    Les attaques WEB

    • Les ressources de l'OWASP
    • Les dix risques de sécurité applicatifs Web les plus critiques selon l’OWASP
    • Identification des principaux risques dans la Cybersécurité

    L’audit d'applications en mode dynamique avec APPSCAN Standard

    • Configuration d’un scan
    • Lancement de l’opération de Scan
    • Analyse des résultats

    💡 Informations utiles

    Nos formations sont offertes à Montréal ou Québec en présentiel ou en format virtuel. Les dates et lieux sont précisés lors de votre choix de session ci-dessous. Si vous avez des questions concernant l'inscription, les horaires, la langue d’enseignement ou les modalités d’annulation, consultez notre FAQ .

    Intervenants

    Durée
    3 jours
    Horaire
    Voir les dates de formations pour plus de détails
    Tarif régulier
    1 485 $
    Tarif préférentiel Un tarif préférentiel est accordé pour chacun des cours aux organismes publics, aux membres de certaines associations ainsi qu’aux entreprises ayant une entente avec Technologia (voir FAQ). Pour la liste complète des entités admissibles, consulter la section « Tarification » des FAQ. Notez également qu’aucun tarif préférentiel n’est accordé pour les formations en ligne. Les rabais accordés sur les formations ne peuvent être cumulables avec aucune autre promotion.
    1 335 $
    Formation en entreprise

    Vous avez plusieurs employés intéressés par une même formation? Que ce soit en présentiel dans vos bureaux ou à distance en mode virtuel, nous offrons des formations privées adaptées aux besoins de votre équipe. Des tarifs de groupes sont disponibles. Contactez-nous pour plus de détails ou demandez une soumission en ligne.

    Demander une soumission

    Demander une formation en entreprise

    Vous avez plusieurs employés intéressés par une même formation? Que ce soit en présentiel dans vos bureaux ou à distance en mode virtuel, nous offrons des formations privées adaptées aux besoins de votre équipe. Des tarifs de groupes sont disponibles. Contactez-nous pour plus de détails ou demandez une soumission en ligne.

    Dites-nous en plus
    Ajout effectué Voir mon panier