Académique Documents
Professionnel Documents
Culture Documents
Spring Security
Level up your Java code and explore what Spring can do for you.
https://spring.io/projects/spring-security
OWASP :
OWASP Foundation, the Open Source Foundation for Application Security | OWASP Foundation
OWASP Foundation, the Open Source Foundation for Application Security on the main website for The
OWASP Foundation. OWASP is a nonprofit foundation that works to improve the security of software.
https://owasp.org/
Open Web Application Security Project, désormais Open Worldwide Application Security
Project, est une communauté en ligne travaillant sur la sécurité des applications Web.
OWASP a été créé pour informer le public des attaques les plus fréquentes à l’encontre des
applications web, les étudier, et donner des informations sur la manière de les prévenir.
Spring Security sécurise les requêtes HTTP de votre application web en les faisant passer par
trois niveaux :
Spring Security 1
1. Un pare-feu HTTP
2. Un proxy
3. Des filtres
Pare-feu HTTP :
Le pare-feu se trouve en première position. C’est un dispositif qui permet de filtrer le flux de
communication, en décidant quels sont les informations qui peuvent penetrer dans notre
application ou non.
Le pare-feu bloque les informations douteuse, qui se caractérise le plus souvent par des
mauvaises requêtes. De façon simple, le pare-feu est comme un agent de sécurité qui
garde une maison blinder, la maison étant notre application. Il décide qui peut entré ou non
en vérifiant minutieusement les information au préalable.
Proxy :
Spring Security 2
Le proxy gère et dirige le trafic
Le proxy gère et dirige le trafic. Après que le pare-feu nous est donné accès à l’application
web, le proxy, en fonction de nos autorisations, nous diriges vers les ressources avec lesquels
nous pouvons interagir. Pour se faire, on utilise la classe DelegatingFilterProxy.
Filtres :
Les filtres sont un ensemble de règle qui compose la configuration de notre Spring Security.
Chaque filtre correspond à une règle de sécurité que nous ajoutons à notre configuration
Spring Security. Ces règles peuvent par exemple définir que tels utilisateurs n’ont droit
d’effectuer que des requêtes GET.
Point de départ :
Avant de commencer à utiliser Spring Security dans notre application, il es nécessaire d’avoir
au préalable certaine dépendance qui doivent être importé dans l’ordre :
1. La dépendance 0Auth2
Spring Security 3
Le contrôle d’accès :
Le contrôle d’accès se compose de deux étapes :
1. Authentification :
Elle permet de répondre à la question Est-ce bien vous ?
On peut retrouver deux type d’authentification dans une application web : Authentification à
facteur unique (qui permet de se connecter grâce à un mot de passe uniquement) et
multiple (requiert la livraison de plusieurs éléments pour prouver notre identité, le mot de
passe seul ne suffit pas).
Spring Security 4
JSON signifie JavaScript Object Notation. Le token web JSON est un objet
JavaScript qui encode et transmet vos informations d’authentification. Il valide
l’authentification de l’utilisateur, car il détient des informations codées que seul le serveur
d'autorisation comprend. Les procédures sont alors plus performantes et sécurisées
qu’avec le cookie ; c’est pourquoi la plupart des applications web Java utilisent JWT.
2. Autorisation :
Les autorisations permettent de répondre à la question Qu’est ce que je peux faire ?
L’autorisation permet de s’assurer que l’utilisateur authentifié se rend uniquement sur les
pages qu’il est autorisé à consulter.
Spring Security 5
2. Annoter la classe de configuration par l’annotation @Configuration pour indiquer à
Spring Boot que ceci est un Bean de type configuration.
7.
Spring Security 6