2011-09-26 9 views
5

Ho un'applicazione Web con FormsAuthentication e con slidingExpiration="true" nel mio web.config non restituisce un cookie in ogni richiesta, ma quando vedo le transazioni HTTP, non riesco a vedere il server Web che restituisce il cookie AUTH in ogni richiesta.FormsAuthentication con enabled slidingExpiration non restituisce un cookie in ogni richiesta.

Controllare il docs, dovrebbe.

slidingExpiration Attributo opzionale. Specifica se la scadenza della scadenza è abilitata. Scadenza decrescente azzera il tempo di autenticazione attivo per un cookie che scade ad ogni richiesta durante una singola sessione . Questo attributo può essere uno dei seguenti valori. Valore Descrizione True Specifica che la scadenza scorrevole è abilitata. Il cookie di autenticazione viene aggiornato e il tempo di scadenza è ripristinato su richieste successive durante una singola sessione. False Specifica che la scadenza di scorrimento non è abilitata e il cookie scade a un intervallo impostato dal momento in cui il cookie è stato originariamente emesso. L'impostazione predefinita è True.

Qualcuno sa perché non funziona come previsto?

Cheers.

risposta

7

Ho letto questo: http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net-security/2316/problem-with-slidingExpiration

In altre parole, se il tempo trascorso dalla creazione del biglietto è di maggiore della metà il timeout biglietto (nello scenario sarebbe 1 minuto) il il biglietto ha vinto' essere rinnovato. Altrimenti verrà concesso un nuovo ticket con un nuovo timeout (2 minuti nel tuo caso). Riepilogando, se si colpisce pagina dopo 1 minuto, non si estende la durata della sessione Moduli indipendentemente dall'impostazione di slidingExpiration.

Ha senso, ma non riesco a trovare alcuna fonte ufficiale. Quindi lo metterò alla prova quando avrò un po 'di tempo libero.

Cheers.

+0

Impossibile rispondere più rapidamente, l'algoritmo di cui sopra può essere imperfetto a seconda delle esigenze. –

+1

Rispondi e sono felice di contrassegnare la tua risposta come corretta :) Perché potrebbe essere difettoso? Grazie. – vtortola

+2

Ecco il link MSDN: http://msdn.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.slidingexpiration.aspx – ctekse

0

I nuovi cookie emetteranno solo quando metà del tempo è trascorso dalla creazione di cookie e ciò accade nel tuo caso.

Problemi correlati