Formation Développeur Sécurisé Java (avec OWASP)
Ce cours couvre les concepts et principes de codage sécurisé avec Java à travers la méthodologie de test de l'Open Web Application Security Project (OWASP). L'Open Web Application Security Project est une communauté en ligne qui crée des articles, méthodologies, documentations, outils et technologies librement disponibles dans le domaine de la sécurité des applications web.
Plan du cours
- comprendre les menaces web et les vecteurs d'attaque
- connaître les principes de conception sécurisée
- comprendre OWASP les 10 principales attaques  ;
- comprendre les problèmes d'authentification et d'autorisation
- savoir comment prévenir les scripts intersites
- savoir comment empêcher la falsification des requêtes intersites (Cross-Site Request Forgery)
- comprendre le cycle de développement sécurisé
- savoir comment prévenir les attaques par injection
- comprendre les protections dans JDBC et JPA
- comprendre les méthodologies de test de pénétration
- Savoir comment sécuriser les applications Java
Pré requis
- Expérience avec Java.
- Expérience de la création d'applications web.
Les formations ouvertes requièrent plus de 3 participants.
Formation Développeur Sécurisé Java (avec OWASP) - Réservation
Formation Développeur Sécurisé Java (avec OWASP) - Demande de renseignements
NobleProg propose des formations professionnelles conçues spécifiquement pour les entreprises et les organisations. Ces formations ne sont pas destinées aux particuliers.
Développeur Sécurisé Java (avec OWASP) - Demande d'informations consulting
Nos clients témoignent (3)
Le sujet est d'actualité et j'avais besoin de me mettre à jour
Damilano Marco - SIAP s.r.l.
Formation - Secure Developer Java (Inc OWASP)
Traduction automatique
C'était assez complet, l'information était claire et concise.
Sebastian-Daniel - BRD
Formation - Secure Developer Java (Inc OWASP)
Traduction automatique
Plusieurs exemples pour chaque module et une grande connaissance de la part du formateur.
Sebastian - BRD
Formation - Secure Developer Java (Inc OWASP)
Traduction automatique
Cours à venir
Cours Similaires
Sécurité des réseaux et communications sécurisées
21 HeuresLa mise en œuvre d'une application réseau sécurisée peut s'avérer difficile, même pour les développeurs ayant déjà utilisé divers éléments cryptographiques de base (tels que le chiffrement et les signatures numériques). Afin de faire comprendre aux participants le rôle et l'utilisation de ces primitives cryptographiques, il est d'abord posé des bases solides sur les exigences principales d'une communication sécurisée – accusé de réception sécurisé, intégrité, confidentialité, identification à distance et anonymat –, tout en présentant les problèmes typiques qui peuvent compromettre ces exigences ainsi que des solutions concrètes appliquées dans la réalité.
La cryptographie étant un aspect critique de la sécurité des réseaux, les algorithmes cryptographiques les plus importants en cryptographie symétrique, hachage, cryptographie asymétrique et accord de clés sont également abordés. Plutôt que de présenter un arrière-plan mathématique approfondi, ces éléments sont exposés du point de vue du développeur, avec des exemples typiques d'utilisation et des considérations pratiques liées à l'usage de la cryptographie, telles que les infrastructures à clé publique (PKI). Les protocoles de sécurité dans de nombreux domaines des communications sécurisées sont introduits, avec une discussion approfondie sur les familles de protocoles les plus largement utilisées, comme IPSEC et SSL/TLS.
Les vulnérabilités cryptographiques typiques sont discutées, tant en relation avec certains algorithmes cryptographiques que protocoles cryptographiques, tels que BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding oracle, Lucky Thirteen, POODLE et similaires, ainsi que l'attaque par chronométrage sur RSA. Dans chaque cas, les considérations pratiques et les conséquences potentielles de chaque problème sont décrites, là encore sans entrer dans les détails mathématiques approfondis.
Enfin, la technologie XML étant centrale pour l'échange de données entre applications réseau, les aspects de sécurité liés au XML sont décrits. Cela inclut l'utilisation du XML dans les services web et les messages SOAP, ainsi que les mesures de protection telles que XML Signature et XML Encryption – mais aussi les faiblesses de ces mesures de protection et les problèmes de sécurité spécifiques au XML, tels que l'injection XML, les attaques par entité externe XML (XXE), les bombes XML et l'injection XPath.
Les participants suivant ce cours seront capables de
- Comprendre les concepts fondamentaux de la sécurité, de la sécurité des systèmes d'information et du codage sécurisé
- Comprendre les exigences d'une communication sécurisée
- Apprendre en quoi consistent les attaques réseau et les défenses aux différentes couches OSI
- Avoir une compréhension pratique de la cryptographie
- Comprendre les protocoles de sécurité essentiels
- Comprendre certaines attaques récentes contre les systèmes cryptographiques
- Obtenir des informations sur certaines vulnérabilités récentes liées
- Comprendre les concepts de sécurité des services web
- Disposer de sources et de lectures complémentaires sur les bonnes pratiques de codage sécurisé
Public cible
Développeurs, Professionnels
Programmation C/C++ sécurisée
21 HeuresRédiger du code C et C++ sûr exige une défense rigoureuse contre l'exploitation malveillante, la corruption de la mémoire et les contournements de validation des entrées. Ce programme examine les schémas de vulnérabilité tels que les dépassements de tampon, l'utilisation après libération (use-after-free), les dépassements d'entiers et les confusions de type. Les participants appliquent les normes de codage sécurisé, des outils d'analyse statique et des techniques de programmation défensive pour éliminer les faiblesses, imposer la sanitisation des entrées et livrer des logiciels durcis résilients face aux cyberattaques.
Sécurité Java Avancée
21 HeuresMême les programmeurs Java expérimentés ne maîtrisent pas toujours les différents services de sécurité offerts par Java, et ne sont pas non plus conscients des vulnérabilités pertinentes pour les applications web écrites en Java.
Le cours - outre l'introduction aux composants de sécurité de la plateforme Java Standard Edition - aborde les questions de sécurité liées à la plate-forme Java Enterprise Edition (JEE) et aux services web. La présentation de services spécifiques s'appuie sur les fondements de la cryptographie et des communications sécurisées. Divers exercices traitent des techniques de sécurité déclaratives et programmatiques dans JEE, tandis que la sécurité au niveau du transport et de bout en bout des services web est discutée. L'utilisation de tous les composants est présentée à travers plusieurs exercices pratiques, permettant aux participants de tester par eux-mêmes les API et outils abordés.
Le cours passe également en revue et explique les failles de programmation les plus fréquentes et les plus graves du langage et de la plate-forme Java, ainsi que les vulnérabilités liées au web. Outre les bugs typiques commis par les programmeurs Java, les vulnérabilités de sécurité introduites couvrent à la fois les problèmes spécifiques au langage et ceux découlant de l'environnement d'exécution. Toutes les vulnérabilités et les attaques correspondantes sont illustrées par des exercices faciles à comprendre, suivis des directives de codage recommandées et des techniques d'atténuation possibles.
Les participants suivant ce cours seront capables de
- Comprendre les concepts de base de la sécurité, de la sécurité informatique et du codage sécurisé
- Apprendre les vulnérabilités web au-delà du top dix OWASP et savoir comment les éviter
- Comprendre les concepts de sécurité des services web
- Apprendre à utiliser diverses fonctionnalités de sécurité de l'environnement de développement Java
- Avoir une compréhension pratique de la cryptographie
- Comprendre les solutions de sécurité de Java EE
- Apprendre les erreurs de codage courantes et comment les éviter
- Obtenir des informations sur certaines vulnérabilités récentes du framework Java
- Acquérir des connaissances pratiques sur l'utilisation des outils de test de sécurité
- Obtenir des références et des lectures supplémentaires sur les pratiques de codage sécurisé
Audience
Développeurs
Programmation avec Groovy
21 HeuresApache Groovy est un langage de programmation dynamique pour la JVM (Java Virtual Machine). Parmi ses caractéristiques, on trouve des capacités de script, la rédaction de langages spécifiques à un domaine, la méta-programmation en temps d'exécution et en temps de compilation, ainsi que la programmation fonctionnelle. Groovy est souvent utilisé comme un complément à Java.
Dans cette formation en direct avec un instructeur, les participants apprendront à programmer en Groovy tout en créant une application échantillon.
Public cible
- Développeurs
Format du cours permettant d'évaluer les participants
- Partie cours magistral, partie discussion, exercices et beaucoup de pratique interactive
Programmation Groovy pour les Débutants
14 HeuresCette formation en direct avec instructeur en France (en ligne ou sur site) est destinée aux développeurs débutants qui souhaitent apprendre les bases de Groovy Programming.
A l'issue de cette formation, les participants seront capables de :
- Comprendre les concepts de base de la programmation.
- Écrire des scripts Groovy simples et utiliser les fonctionnalités de base Groovy.
- Comprendre et appliquer les principes de base de la programmation orientée objet en utilisant Groovy.
- Apprendre les techniques de base de traitement des erreurs pour gérer les erreurs de programmation courantes et les exceptions dans Groovy.
Microservices Java
21 HeuresCette formation en direct avec instructeur en France (en ligne ou sur site) est destinée aux développeurs Java de niveau intermédiaire qui souhaitent concevoir, développer, déployer et maintenir des applications basées sur des microservices en utilisant des frameworks Java tels que Spring Boot et Spring Cloud.
A l'issue de cette formation, les participants seront capables de :
- Comprendre les principes et les avantages de l'architecture microservices.
- Construire et déployer des microservices en utilisant Java et Spring Boot.
- Mettre en œuvre la découverte de services, la gestion de la configuration et les passerelles API.
- Sécuriser, surveiller et mettre à l'échelle les microservices de manière efficace.
- Déployer des microservices en utilisant Docker et Kubernetes.
Créer des microservices avec Spring Boot, Docker et Kubernetes
21 HeuresCe formation en présentiel, animée par un formateur à France (disponible en ligne ou en interne), est adaptée aux développeurs de niveau intermédiaire à avancé qui souhaitent maîtriser le développement de microservices à l'aide de Spring Boot, Docker et Kubernetes.
À l'issue de cette formation, les participants seront capables de :
- Comprendre les principes de l'architecture microservices.
- Construire des microservices prêts pour la production en utilisant Spring Boot.
- Comprendre le rôle crucial de Docker dans la conteneurisation des microservices.
- Configurer des clusters Kubernetes pour déployer et orchestrer des microservices.
Quarkus pour les Développeurs
14 HeuresCette formation dirigée par un instructeur (en ligne ou sur site) est destinée aux développeurs souhaitant utiliser Quarkus pour construire, tester et déployer des applications, pleinement alimentées par Java, mais avec une utilisation moindre des ressources.
À la fin de cette formation, les participants seront en mesure de :
- Mettre en place l'environnement de développement nécessaire pour commencer à développer des applications avec Quarkus.
- Construire, compiler et exécuter des applications en mode natif à l'aide de GraalVM.
- Utiliser les outils et extensions Quarkus pour construire des applications natives à l'aide de Maven.
- Conteneuriser, exécuter et déployer des applications avec Docker.
Quarkus pour le développement Java natif et de microservices
40 HeuresCette formation dirigée par un instructeur (en ligne ou sur site) est destinée aux développeurs et architectes intermédiaires à avancés qui souhaitent développer des applications Java natives et des microservices en utilisant Quarkus avec une utilisation optimisée de la mémoire et du temps de démarrage.
À la fin de cette formation, les participants seront capables de :
- Développer des applications Java natives haute performance et légères en utilisant Quarkus.
- Construire et déployer des services RESTful et des architectures de microservices.
- Utiliser GraalVM pour la compilation native et optimiser l'efficacité du démarrage et de la mémoire.
- Emballer et conteneuriser des applications pour les environnements Kubernetes et OpenShift.
RabbitMQ avec Java et Spring
14 HeuresCette formation en France (en ligne ou sur site) s'adresse aux architectes logiciels et aux développeurs web qui souhaitent utiliser RabbitMQ comme middleware de messagerie et programmer en Java en utilisant Spring pour construire des applications.
A l'issue de cette formation, les participants seront capables de :
- Utiliser Java et Spring avec RabbitMQ pour construire des applications.
- Concevoir des systèmes asynchrones pilotés par messages en utilisant RabbitMQ.
- Créer et appliquer des files d'attente, des sujets, des échanges et des liaisons dans RabbitMQ
Spring Boot, React et Redux
14 HeuresCette formation en direct avec instructeur (en ligne ou sur site) s'adresse aux développeurs web qui souhaitent créer des applications web fonctionnelles front-end et back-end avec Spring Boot, React, and Redux.
A l'issue de cette formation, les participants seront capables de :
- Créer une application front-end avec React et Redux.
- Créer des API RESTful avec Spring Boot.
- Sécuriser les services web avec Spring security et les jetons web JWT.
Spring 5
21 HeuresCette formation dirigée par un formateur (en ligne ou sur site) s'adresse aux développeurs Java qui souhaitent utiliser le framework Spring 5 pour développer et déployer des applications web d'entreprise.
À la fin de cette formation, les participants seront capables de :
- Installer et configurer Spring 5.
- Comprendre et mettre en œuvre les dernières fonctionnalités de Spring 5.
- Accéder aux bases de données avec une application Spring.
- Utiliser le nouveau framework web réactif, WebFlow, pour rendre une application réactive.
- Intégrer une application Spring à des applications Java EE existantes.
- Tester et déployer une application Spring d'entreprise de niveau entreprise.
Les bases de Spring avec Spring Boot 3.5.5 et Java 21
14 HeuresSpring est un framework Java complet qui simplifie le développement d'applications d'entreprise en offrant une injection de dépendances puissante, une architecture modulaire et des options de configuration rationalisées.
Cette formation, dispensée par un instructeur en direct (en ligne ou sur site), s'adresse aux développeurs Java débutants souhaitant créer des applications web modernes et prêtes pour la production en utilisant la dernière version du framework Spring et de Spring Boot 3.5.5 avec Java 21.
Au terme de cette formation, les participants seront en mesure de :
- Comprendre les principes fondamentaux de Spring, notamment l'inversion de contrôle (IoC), l'injection de dépendances (DI) et la programmation orientée aspect (AOP).
- Configurer des applications Spring à l'aide de fichiers XML, d'annotations et de JavaConfig.
- Développer des services RESTful avec Spring Boot et JPA.
- Mettre en œuvre des opérations CRUD, gérer les transactions et assurer la persistance des données.
- Utiliser des fonctionnalités avancées de Spring telles que les profils, la gestion des exceptions et la sérialisation des données.
Format du cours permettant d'évaluer les participants
- Une brève introduction théorique suivie d'exercices pratiques approfondis.
- Mise en œuvre pratique à l'aide d'exemples concrets.
- Discussions interactives et dépannage guidé.
Options de personnalisation du cours
- Pour demander une formation personnalisée pour ce cours, veuillez nous contacter afin de convenir d'un arrangement.
Spring WebFlux : Reactive Programming pour les applications web évoluées
35 HeuresSpring WebFlux est un module de programmation réactive au sein du cadre Spring, conçu pour construire des applications web non-bloquantes et événementielles.
Cette formation dirigée par un instructeur (en ligne ou sur site) s'adresse aux développeurs Java de niveau débutant à intermédiaire qui souhaitent construire des applications scalables et réactives en utilisant Spring WebFlux.
À la fin de cette formation, les participants seront capables de :
- Comprendre les principes fondamentaux de la programmation réactive avec Project Reactor.
- Construire et tester des API RESTful non-bloquantes à l'aide de Spring WebFlux.
- Intégrer WebFlux avec des bases de données et des services externes.
- Appliquer les modèles réactifs à des scénarios d'application réels.
Format de la formation
- Conférence interactive et discussion.
- Nombreux exercices et pratiques.
- Mise en œuvre pratique dans un environnement de laboratoire en direct.
Options de personnalisation du cours
- Pour demander une formation personnalisée pour ce cours, veuillez nous contacter pour organiser.
Spring Webflux
14 HeuresCette formation en direct, animée par un instructeur en France (en ligne ou sur site), s'adresse aux développeurs souhaitant utiliser WebFlux pour concevoir et déployer des applications réactives.
À la fin de cette formation, les participants seront capables de :
- Installer et configurer Spring 5 et le framework WebFlux.
- Développer des applications et des services réactifs.