Abbiamo un paio di applicazioni Django distribuite sullo stesso sottodominio. Alcuni utenti esperti devono saltare tra queste applicazioni. Ho notato che ogni volta che rimbalzano tra le applicazioni il loro cookie di sessione riceve un nuovo ID di sessione da Django.Come ottenere distinte app Django sullo stesso sottodominio per condividere cookie di sessione?
Non uso molto la tabella di sessione di Django tranne in un flusso di lavoro complesso. Se l'utente rimbalza tra le applicazioni mentre si trova in questo flusso di lavoro, perde la sessione e deve ricominciare da capo.
ho scavato attraverso il codice di sessione Django e ha scoperto che il:
django.conf.settings.SECRET_KEY
viene utilizzato per eseguire un controllo di integrità sui sessioni su ogni richiesta. Se il controllo di integrità fallisce, viene creata una nuova sessione. Comprendendo ciò, ho modificato la chiave segreta in ognuna di queste applicazioni per utilizzare lo stesso valore, pensando che questo avrebbe permesso il superamento del controllo di integrità e consentire loro di condividere le sessioni di Django. Tuttavia, non sembrava funzionare.
C'è un modo per farlo? Mi manca qualcos'altro?
Grazie in anticipo
+1: sposta le credenziali tra le sessioni di Django. –
Questo è un buon suggerimento - farò un tentativo. Per l'SSO, si tratta di app interne integrate con un'app di PHP legacy che si occupa dell'autenticazione nella sessione PHP, quindi non dovrebbe essere un problema. Ho davvero bisogno che le app di Django non si calpestino le altre sessioni a questo punto. Thx –
Questo ha fatto il trucco.Ora mi sento un po 'sciocco che non ho considerato io :) –