-
Notifications
You must be signed in to change notification settings - Fork 37
Description
Attualmente la libreria salva delle informazioni nella sessione prima di fare il redirect verso un IDP. Se il sistema che utilizza la libreria imposta il cookie di sessione con SameSite=Lax al ritorno dall'IDP il browser non invierà il cookie al backend rendendo di fatto impossibile l'autenticazione.
Il problema è attualmente risolvibile impostando il cookie di sessione con SameSite=None; Secure che però non garantisce l'impossibilità da parte di script di leggere il valore del cookie (https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#samesitesamesite-value).
L'implementazione usata in Laravel, ad esempio, salva ogni valore necessario dopo il redirect in un cookie specifico, non di sessione, che può usare SameSite=None; Secure senza impattare sulla sicurezza dell'applicazione (i valori salvati sono il nome dell'IDP scelto dall'utente, la url dell'ACS e altri dati non sensibili)