Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

session never expires

Îåêßíçóå áðü ôï ìÝëïò alex_VB. Τελευταία δημοσίευση από το μέλος alex_VB στις 18-06-2010, 17:58. Υπάρχουν 11 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  14-06-2010, 16:03 59119

    session never expires

    Καλησπέρα σε όλους.

    Θα ήθελα τη βοηθειά σας σχετικά με το τί δηλώσεις θα πρέπει να κάνω στο web config ώστε το session να μη κάνει ποτέ expire και πετάει τους χρήστες στη login page.

     

    Ευχαριστώ πολύ.


    www.myautos.gr
    Δημοσίευση στην κατηγορία: ,
  •  15-06-2010, 11:27 59133 σε απάντηση της 59119

    Απ: session never expires

    Δες τα δυο παρακάτω άρθρα:
    Σύμφωνα με το documentation η μεγαλύτερη τιμή που μπορεί να πάρει το timeout είναι ένας χρόνος. Δεν νομίζω ότι θέλεις κάτι τέτοιο.
    Φαντάζομαι ότι αυτό είναι απαίτηση πελάτη; Οφείλεις να ενημερώσεις ότι κάτι τέτοιο είναι πρόβλημα ασφάλειας. Είναι καλό που και που να "πετάει" έξω τους χρήστες και αυτοί να ξανακάνουν login.

    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  15-06-2010, 18:32 59141 σε απάντηση της 59133

    Απ: session never expires

    Όντως το ζήτησε πελάτης. Του το είπα ήδη οτι ειναι καλό να τον πετάει έξω και οτι υπάρχει σκοπός για αυτό. Είμαι σίγουρος πως ξέρεις καλά τον Έλληνα πενηντάρη πελάτη οπότε δεν χρειάζεται να σου αναλύσω την απάντηση του.

    Σε ευχαριστώ πάρα πολύ.


    www.myautos.gr
  •  15-06-2010, 19:03 59142 σε απάντηση της 59141

    Απ: session never expires

    Ο πελάτης ζήτησε να μην λήγει το session ή να μην του ζητάει συνέχεια login?  Γιατί το δεύτερο μπορείς να το πετύχεις καταρχήν χρησιμοποιώντας Windows Authentication (αν μιλάμε για intranet περιβάλλον) ή χρησιμοποιώντας τα cookies του Forms Based Authentication. Έτσι κι αλλιώς, το authentication timeout ελέγχεται από το <authentication><forms> timeout attribute και όχι από το SessionState

    Πρωτού απορρίψεις αυτά που σου ζητάει ο πελάτης σου καλό θα είναι να καταλάβεις τί είναι αυτό που πραγματικά ζητάει και να μην προσηλώνεσαι στο πως θα το κάνεις, ή πως σου λέει αυτός να το κάνεις.

    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  15-06-2010, 19:04 59143 σε απάντηση της 59141

    Απ: session never expires


    Ο δημήτρης έθιξε , σωστά, το θέμα του security.

    υπάρχει και το θέμα του Performance. αν το κάνεις από το web.config το session timeout σε 365 μέρες, θα ισχύσει για όλα τα sessions, δηλαδή για όλους τους users.....

    Μην αναρωτηθεί μετά ο πελάτης σου που πήγε όλη η μνήμη.....

    Νικόλαος Καντζέλης
    BSc, MSc, MCAS, MCPD, MCITP, MCTS,MCP, MCT
    http://www.nksolutions.gr
    http://dotnetstories.wordpress.com
    http://weblogs.asp.net/dotnetstories
    http://forum.dotnetnuke.gr
  •  16-06-2010, 12:31 59160 σε απάντηση της 59142

    Απ: session never expires

    Παναγιώτης Καναβός:
    ...  ή χρησιμοποιώντας τα cookies του Forms Based Authentication. Έτσι κι αλλιώς, το authentication timeout ελέγχεται από το <authentication><forms> timeout attribute και όχι από το SessionState


    Άκου τον Παναγιώτη φίλε, αυτή είναι η λύση στο πρόβλημά σου - θα γράψεις και λίγο πιο ενδιαφέροντα κώδικα επίσης Wink

    Angel
    O:]
  •  17-06-2010, 22:27 59188 σε απάντηση της 59142

    Απ: session never expires

    Παναγιώτη έθιξες ένα πολύ ωραιο θέμα. Αυτό που ζητήται είναι να μην γίνεται συνεχώς redirect στη σελίδα login.

    Πως μπορώ να το πετύχω αυτό με  cookies Forms Based Authentication?

    Τι πρόβλημα δημιουργείται αν αφήσω το session ενεργό για μεγάλο χρονικό διάστημα?

     

    Σε ευχαριστώ.


    www.myautos.gr
  •  18-06-2010, 01:02 59189 σε απάντηση της 59188

    Απ: session never expires


    Οκ, εσύ έχεις στο μυαλό σου να κάνεις ένα fuctionality. Το fuctionality του "Remember Me". αλλά δεν θέλεις και δεν πρέπει να το κάνεις με Session variables. Αυτό γιατί, για λόγους performance δεν μπορείς να έχεις μεγάλο session time out. Επίσης δεν παίζει αυτή η λύση ακόμα και αν "αυξήσεις" το Session timeout time του Session state από το web.config, όταν ο user κλείσει καταλάθος τον browser. Τότε θα χαθεί το session άσχετα με τoν timeout χρόνο.

    Οπότε εσύ θα έχεις πάει κάποια στιγμή σε κάποιο site, θα έχεις κάνει login, και θα έχεις πάει πάλι μετά από 3 μέρες και το site σε θυμάται. Και θέλεις να κάνεις το ίδιο. Θα κάνεις αυτό που λέει ο Παναγιώτης. θα παίξεις με forms based authentication με cookies

    Αν θες βλέπεις αυτό εδώ

    Στο cookie μπορείς να αποθηκεύσεις (user credentials) μέχρι να το σβήσει κάποιος. Με αυτό τον τρόπο δεν χρειάζεται να κάνει re-login κάθε φορά που επισκέπτεται το site. επίσης μπορεί ο χρήστης από το browser settings να κάνει block τα cookies.

    αυτός είναι ένας κίνδυνος που θα πρέπει να "ζήσεις"....

    Για το πως υλοποιείται αυτό, θα πρέπει να δεις την SetAuthCookie()


    Δώσε βάση στο δεύτερο Parameter της παραπάνω function

    createPersistentCookieType: System..::.Boolean
    true to create a persistent cookie (one that is saved across browser sessions); otherwise, false.


     και την RedirectFromLoginPage()
    και την FormsAuthenticationticket class. φυσικά θα γράψεις λίγο κώδικα.

    Όταν κάποιος κάνει log in στο site, τσεκάρεις το username και password σε σχέση με τα στοιχεία που υπάρχουν σε κάποιο πίνακα στην βάση.

    αν γίνει match σε κάποιο event,  μπορείς να γράψεις κάτι σαν
    FormsAuthentication.SetAuthCookie(username.Text True)

    και μετά για να δεις ότι κάποιος είναι logged in


    If Context.User.Identity.IsAuthenticated Then...


    θα πας και στο web.config και κάπου θα κάνεις το εξής

    <authentication mode="Forms">
          <forms loginUrl="register.aspx" .......... timeout="5000">
          </forms>
        </authentication>


    δες και αυτό εδώ

    το 5000 είναι Minutes, οπότε αυτό σημαίνει 3,5 μέρες.... χωρίς να γίνονται logged out.




    Νικόλαος Καντζέλης
    BSc, MSc, MCAS, MCPD, MCITP, MCTS,MCP, MCT
    http://www.nksolutions.gr
    http://dotnetstories.wordpress.com
    http://weblogs.asp.net/dotnetstories
    http://forum.dotnetnuke.gr
  •  18-06-2010, 10:36 59190 σε απάντηση της 59189

    Απ: session never expires

    Ρε Νίκο έλεος! Πόσα διαφορετικά text-styles μπορείς να βάλεις σε ένα post; Big Smile

     


    Vir prudens non contra ventum mingit
  •  18-06-2010, 10:47 59192 σε απάντηση της 59190

    Απ: session never expires

    Και επίσης Νίκο, πρόσεχε λίγο το θέμα της συζήτησης. Δεν συζητάμε για το πως γίνεται το Forms Based Authentication. Όταν έχουμε φτάσει στο ζήτημα του timeout υποθέτω ότι έχει ήδη καλυφθεί. Άσε που "ρίχνοντας" ένα video το οποίο μοιάζει να έχει σχέση με τη συζήτηση δεν βοηθάς, μπερδεύεις.
    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  18-06-2010, 12:28 59198 σε απάντηση της 59190

    Απ: session never expires

    Μάνο το έκανα για να φαίνονται κάποια πράγματα. Μάλλον να το αλλάξω.

    Παναγιώτη δεν έβαλα μόνο ένα video. έγραψα και άλλα πράγματα. Δεν ξέρω αν τον βοήθησε τον άνθρωπο  ή όχι. Δεν το έκανα για να μπερδέψω κανένα. Το video σου δίνει να καταλάβεις κάποια πράγματα.


    Νικόλαος Καντζέλης
    BSc, MSc, MCAS, MCPD, MCITP, MCTS,MCP, MCT
    http://www.nksolutions.gr
    http://dotnetstories.wordpress.com
    http://weblogs.asp.net/dotnetstories
    http://forum.dotnetnuke.gr
  •  18-06-2010, 17:58 59202 σε απάντηση της 59198

    Απ: session never expires

    Νικο βοήθησες πάρα πολύ με τα video παρόλο που το θέμα είχε σχέση με το timeout. Αυτό ακριβώς ήθελα να κάνω και το έκανα με remember me check box κατά το login.

     

    Σε ευχαριστώ πάρα πολύ.


    www.myautos.gr
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems