Vue/SpringBoot : Pourquoi mon JSESSIONID continue-t-il de changer
P粉163951336
P粉163951336 2023-08-29 19:12:16
0
1
502

J'ai une application vue avec le backend Spring Boot 3.0.1 et je souhaite utiliser CSRF. Le frontend Vue et le backend Spring Boot sont servis par des systèmes différents. Je prévois d'utiliser un proxy inverse nginx pour atténuer le sujet CORS, mais ce problème se produit, que nginx soit impliqué ou non.

La première chose que fait mon application vue est de demander le jeton csrf, en le stockant globalement afin qu'il puisse être utilisé pendant la session utilisateur.

Lorsqu'un utilisateur se connecte, plusieurs magasins Pinia sont initialisés. Mais malheureusement, lors de ces requêtes, le cookie JSESSIONID envoyé à chaque requête est ignoré par le backend et un nouveau JSESSIONID est émis. Le JSESSIONID ne cesse de changer lors de l'utilisation de l'application et de l'envoi d'autres requêtes GET

Cela rend bien sûr invalide le jeton CSRF stocké "global" du JSESSIONID initial...

En-tête de requête "csrf" :

Titre « Connexion » :

Puis tout à coup, la 5ème requête a reçu un nouveau JSESSIONID même si j'ai envoyé le cookie JSESSIONID dans la requête (envoyé par le serveur - pourquoi ?

Question

Pourquoi mes sessions changent-elles constamment ? Mon JSESSIONID ne devrait-il pas toujours rester le même ?

Quel est le but de la conduite du CSRF ? Demander un nouveau jeton avant de faire une demande (non-GET ?) ? (Le mien utilise les « informations d'identification : « même origine »)

P粉163951336
P粉163951336

répondre à tous (1)
P粉070918777

J'avais.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)dans mon SecurityConfig, ce qui posait des problèmes... Pour autant que je sache, sa suppression a résolu l'utilisation du CSRF. p>

    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal
    À propos de nous Clause de non-responsabilité Sitemap
    Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!