Il cookie di sessione Flask ha il set httponly
flag, che lo rende invisibile da JavaScript.
È in ogni caso un normale cookie regolare, quindi è ancora memorizzato nel cookie store del browser; dovresti comunque essere in grado di vederlo negli strumenti di sviluppo del tuo browser.
È possibile impostare l'opzione SESSION_COOKIE_HTTPONLY
su False
se si desidera poter accedere al valore del cookie dal codice JavaScript. Dal Builtin Configuration Values section:
SESSION_COOKIE_HTTPONLY
controlli se il cookie deve essere impostato con il flag HttpOnly. Il valore predefinito è True.
Il cookie contiene tutti i dati della sessione, serializzati mediante JSON (con codifica il supporto per una più ampia gamma di tipi di Python), insieme ad una firma crittografata che consente di verificare i dati non possono essere manomessi in modo sicuro.
Se si disattiva la protezione httponly
, qualsiasi codice JS potrebbe ancora decodificare e leggere tutti i dati della sessione. Anche se non può modificare quei valori, potrebbe comunque essere molto interessante il codice dannoso. Immagina che un bug XSS nel tuo sito sia peggiorato perché il codice JS potrebbe solo leggere un token CSRF utilizzato per proteggere un modulo Web direttamente dalla sessione.
fonte
2016-05-06 09:18:07
Flask memorizza un ID di sessione nel browser con il tasto 'session' –
@HassanMehmood: i negozi implementazione di default * tutte le sessioni dati * in un cookie (firmato). –