Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Come implementano i browser la gestione della sessione ?

    Ciao a tutti,
    sto testando una web application (un gestionale su intranet) e ho riscontrato un comportamento diverso rispetto alla gestione della sessione, tra diverse versioni dei browser.
    Il test è mirato a verificare quanto robusta fosse l'applicazione rispetto a casi particolari di utilizzo del browser da parte dell'utente, come ad esempio:
    1) l'utente si autentica con lo stesso account utilizzando due istanze separate del browser
    2) l'utente si autentica con lo stesso account utilizzando due tab

    Ho notato che con IE 7.0 alle due istanze separate, in cui gira la stessa applicazione vengono assegnati due id di sessione separati, come si legge anche qui:

    http://www.apogeonline.com/webzine/2...4/200210101401

    mentre con IE 8.0, Chrome, FF 3.6.3 viene assegnato lo stesso ID di sessione alle due istanze separate; quello che volevo chiedervi è se quello che ho riscontrato risulta anche a voi e se esistono in rete articoli dedicati alla politica di gestione della sessione da parte dei browser che giustifichino questo comportamento.
    Grazie a chi vorrà rispondermi

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    La Web application in questione l'hai realizzata tu?
    Se sì, con quale linguaggio?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    cookie o aggiunta in ogni link della variabile sessionid (questo per php)

  4. #4
    Originariamente inviato da alka
    La Web application in questione l'hai realizzata tu?
    Se sì, con quale linguaggio?
    Non l'ho fatta io, io sono l'analista - progettista;
    cmq la web application è scritta in java, ma quello che mi interessa in questo momento, non è come posso gestire io la sessione in java; già lo facciamo con i cookies di sessione,hidden tag, l'URL rewriting in altri casi.
    Quello che mi interessa è capire quqli sono le politiche dei produttori di browser in merito alla gestione della sessione.
    Qualcosa ho trovato qui per Microsoft:
    http://blogs.msdn.com/b/askie/archiv...lorer-8-0.aspx
    http://blogs.msdn.com/b/askie/archiv...ss-in-ie8.aspx
    dove si parla di “Merged Frame Process” or MFP.
    ciao

  5. #5
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465

    Moderazione

    Originariamente inviato da calosoft
    Quello che mi interessa è capire quqli sono le politiche dei produttori di browser in merito alla gestione della sessione.
    La problematica è abbastanza off topic.

    Penso che una ricerca su Google sarebbe più appropriata.

    Se si vuole approfondire la questione lato browser, posso spostare in Windows e software (o Linux e software, se occorre), anche se la sessione generalmente è un elemento che viene gestito lato server (come già indicato, i browser si limitano a specificarne l'ID attraverso un parametro specifico dell'indirizzo o tramite cookie... è il server che poi decide come trattarlo e con quali tempistiche).
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  6. #6
    Originariamente inviato da calosoft
    Non l'ho fatta io, io sono l'analista - progettista;
    cmq la web application è scritta in java, ma quello che mi interessa in questo momento, non è come posso gestire io la sessione in java; già lo facciamo con i cookies di sessione,hidden tag, l'URL rewriting in altri casi.
    Quello che mi interessa è capire quqli sono le politiche dei produttori di browser in merito alla gestione della sessione.
    Qualcosa ho trovato qui per Microsoft:
    http://blogs.msdn.com/b/askie/archiv...lorer-8-0.aspx
    http://blogs.msdn.com/b/askie/archiv...ss-in-ie8.aspx
    dove si parla di “Merged Frame Process” or MFP.
    ciao

    il browser non gestisce le sessioni

  7. #7

    Re: Moderazione

    Originariamente inviato da alka
    La problematica è abbastanza off topic.

    Penso che una ricerca su Google sarebbe più appropriata.

    Se si vuole approfondire la questione lato browser, posso spostare in Windows e software (o Linux e software, se occorre), anche se la sessione generalmente è un elemento che viene gestito lato server (come già indicato, i browser si limitano a specificarne l'ID attraverso un parametro specifico dell'indirizzo o tramite cookie... è il server che poi decide come trattarlo e con quali tempistiche).
    va bene se vuoi, sposta la discussione sull'altro Forum e scusami per l'OT; credevo fosse cmq interessante per uno sviluppatore lato server sapere qual è la politica di gestione della sessione da parte del browser, in modo da gestire i comportamenti "pericolosi" dell'utente, quali appunto l'apertura di nuove finestre o tab con la stessa applicazione e la stessa utenza, ecc.

  8. #8
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465
    Originariamente inviato da calosoft
    va bene se vuoi, sposta la discussione sull'altro Forum e scusami per l'OT; credevo fosse cmq interessante per uno sviluppatore lato server sapere qual è la politica di gestione della sessione da parte del browser, in modo da gestire i comportamenti "pericolosi" dell'utente, quali appunto l'apertura di nuove finestre o tab con la stessa applicazione e la stessa utenza, ecc.
    Vista la precisazione, mantengo la discussione qui, perché in effetti è molto borderline.

    Tornando al problema, come è stato detto anche da altri, i browser non gestiscono le sessioni, ma inviano le informazioni memorizzate nel "cookie di sessione" o tramite l'indirizzo, ed è il server che le gestisce.

    Detto questo, non dovrebbero esserci particolari accorgimenti da prendere lato server nello sviluppo di applicazioni, poiché è sufficiente appoggiarsi alla gestione della sessione fornita dal framework in uso, sia esso ASP, ASP.NET, JSP, PHP, ecc.

    Ciao!
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  9. #9
    Originariamente inviato da alka
    Vista la precisazione, mantengo la discussione qui, perché in effetti è molto borderline.

    Tornando al problema, come è stato detto anche da altri, i browser non gestiscono le sessioni, ma inviano le informazioni memorizzate nel "cookie di sessione" o tramite l'indirizzo, ed è il server che le gestisce.

    Detto questo, non dovrebbero esserci particolari accorgimenti da prendere lato server nello sviluppo di applicazioni, poiché è sufficiente appoggiarsi alla gestione della sessione fornita dal framework in uso, sia esso ASP, ASP.NET, JSP, PHP, ecc.

    Ciao!
    Ciao!
    Continuo la mia discussione borderline, perchè credo che in alcuni casi possa avere un certo interesse, e visto che nel frattempo ho scoperto qualcosa, vi posto il mio contributo, sperando possa risultare utile a qualcuno;
    Ovviamente è arcinoto che i browser non gestiscono la sessione, essendo http stateless, ma il problema che ponevo è un altro, ed evidentemente non sono riuscito a spiegarmi.
    Per gestione della sessione da parte del browser intendo questo:
    come si comporta il browser quando, fruendo della stessa applicazione un utente:
    1) si logga
    2) utilizza per un po' l'applicazione, facendo delle query, scrivendo sul db, ecc.
    3) poi ad un certo punto apre un link di questa applicazione in una nuova istanza del browser;
    che succede adesso ? Cosa fa il browser ? assegna un nuovo ID di sessione alla nuova istanza del browser o lascia lo stesso ID di sessione? Se mi consentite questo ha una certa importanza per chi sviluppa lato server, perché IMHO una situazione del genere dovrebbe essere gestita per non "inquinare" il contesto con dati sporchi, se l'utente si mette a giocare con le finestre del browser.
    Ora quello che scoperto nel frattempo è che IE, dalla versione 8.0 in poi ha cambiato la sua politica di gestione della sessione:
    a) prima di IE 8.0, aprire due istanze del browser (cliccando sulla icona di IE sul desktop) implicava che il browser assegnava due ID di sessione diversi alle due istanze, anche se ci girava la stessa applicazione. Se invece apro la nuova finestra con CTRL+N l'ID di sessione è lo stesso tra le due finestre.
    b) da IE 8.0 in poi la situazione è cambiata: la Microsoft, come potete leggere in questi due articoli che vi segnalo sotto, ha deciso di far gestire l'attribuzione degli ID di sessione al browser in modo "intelligente" poiché ad ogni istanza corrisponde un processo sul client, per non sovraccaricare la macchina, IE 8.0 decide lui se deve assegnare un nuovo ID di sessione alla nuova finestra del browser oppure condividere quello della prima finestra già aperta. Se poi voglio forzare l'apertura di una nuova finestra del browser con un nuovo id di sessione, devo utilizzare il comando file - nuova sessione.
    Firefox e Chrome hanno un comportamento simile , ma non ho ancora scoperto se hanno, come IE, la possibilità di forzare la nuova sessione.
    Eccovi i link agli articoli Microsoft:

    Session management within Internet Explorer 8.0

    Clicking on the blue “e” in taskbar does not launch a new process in IE8

    Ciao
    Emanuele

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.