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

    [Java - JSP] Login con checkbox "Resta Collegato"

    Ciao ragazzi,
    Ho una pagina html che permette di effettuare il login ad un'applicazione. Oltre agli input text di username e password è presente una checkbox che se TRUE scrive sul client un cookie con l'utenza.
    Fino a qui funziona tutto. L'accesso avviene e il cookie viene scritto. In questo modo mi trovo due cookie, uno sessionId e l'altro scritto con la checkbox.
    Il mio problema è che non capisco come associare la session id, al cookie, e che controllo fare per sapere se l'utente è già connesso nella pagina successiva al login chiamata home.

    Questa è la parte della scrittura del cookie in un javabean:
    codice:
    if (bean.getAuth()) { 
                session.setAttribute("utente", username);
                if (request.getParameter("linked")!=null) {
                    Cookie cookie = new Cookie("RUBRICHE",username);
                    cookie.setPath("/");
                    cookie.setComment("utenza");
                    cookie.setMaxAge(24*60*60);
                    response.addCookie(cookie);
                    }
                response.sendRedirect("home.jsp");

    Questa è la pagina di login:
    codice:
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Rubriche Telefoniche - Login</title>
        </head>
        <body bgcolor="yellow">
         <% 
            boolean foundCookie = false;
            String user = null;
            Cookie[] cookiesUtente = request.getCookies();
            if (cookiesUtente != null) {
                for(int i=0; i< cookiesUtente.length; i++) {
                    if (cookiesUtente[i].getName().equals("RUBRICHE")) {
                        user = cookiesUtente[i].getValue();
                        foundCookie = true;
                               
                                               }
                }
            }
            if (foundCookie) {
                response.sendRedirect("home.jsp");
            }
            %>
             <h2>Rubriche Telefoniche</h2><br>
            <br>
            <img src="images/telefono_fisso.jpg">
            <br>
            <p>Per visualizzare le rubriche è necessario effettuare il login</p>
            <form action="login.jsp" method="post">
                <fieldset>   
                     <legend>Form di login</legend>    
                     <label>Username:</label><input type="text" name="username"><br>
                     <label>Password:</label><input type="password" name="password"><br>
                     <input type="checkbox" name="linked" value="false">Resta Collegato<br>
                </fieldset>
                     <input type="submit" value="Connettiti" name="login">
            </form>
        </body>
    </html>
    e questa è la pagina Home dove dovrei controllare se l'utente è connesso e che non so come modificare:
    codice:
    <%@page contentType="text/html" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Rubrica - Home</title>
        </head>
        <body bgcolor="yellow">
            <% if (session.isNew() || session.getAttribute("utente")==null) {
                %> <p> Non sei Loggato! Tra qualche secondo andrai alla pagina di login. <br>
                    <br>
                    Se non vuoi aspettare, clicca <a href="index.jsp">qui</a></p>
                <meta http-equiv="refresh" content="3;url=index.jsp"/>
                <%   } else {
               
              %>
                  
            <h2>Home Page - Rubriche</h2>
            <p>Benvenuto nell'applicazione rubriche <b> <%= session.getAttribute("utente")%> </b>! <a href="logout.jsp">Logout</a></p> 
            <br>
    ....

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da forza_sugar Visualizza il messaggio
    Il mio problema è che non capisco come associare la session id, al cookie, e che controllo fare per sapere se l'utente è già connesso nella pagina successiva al login chiamata home.
    Quindi per "ricordare" l'utente usi quel cookie "RUBRICHE" che contiene solo, banalmente, lo username??

    Premessa: non ho mai avuto modo di implementare la logica del "resta collegato" (o "ricordami", chiamatelo come volete). Ma di una cosa sono sicuro: il cookie utilizzato per questa logica deve di certo avere un valore ben complesso/criptato, perché altrimenti se è facilmente intuibile/determinabile da altri, il tuo login sarebbe altamente vulnerabile.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  3. #3
    naturalmente è una prova e per quello che mi serve, non deve essere criptato.
    E poi sto chiedendo apposta lumi a qualcuno esperto.
    mah

  4. #4
    nessuno riesce ad aiutarmi?? magari anche con qualche guida

Tag per questa discussione

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 © 2024 vBulletin Solutions, Inc. All rights reserved.