Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    Invio di password temporanea

    Ciao a tutti
    ho un piccolo problema
    SE un utente dimentica la password a sua richiesta il mio script gliene invia una temporanea:
    topolino
    E' chiaro però che pur essendo semplice potrebbe dare adidto a scherzi
    Per esempio se un utente capisce che viene sempre inviato topolino potrebbe inserire un nome utente di un altro ed entrare con topolino nel profilo dell'altro.
    Cosa mi consigliate di fare pur mantenendo la semplicità?
    grazie

  2. #2
    puoi generare una password alfanumerica (non troppo difficile) da 8 caratteri e spedire direttamente quella.

    Oppure senza cambiare la sua password nel db, puoi mandargli un link ad una pagina che ti faccia fare il login con una password temporanea (ma solo se c'è un campo nel get) e come password fai una cosa univoca tipo
    Codice PHP:
    <?php
    $pass_temp 
    substr(md5($nomeutente.$nome.$passwordvecchia), 08);
    ?>
    spero di essere stato chiaro

    ciao
    Perchè essere stupidi non è una menomazione ma un diritto di tutti!!!

  3. #3
    Secondo me se uno perde la password e fa richiesta la vecchia va sempre eliminata, se uno non si ricorda la password per quello che ne sappiamo potrebbe aver scritto tutte le sue password su un foglietto e averlo perso.
    Quindi genererei una nuova password di 8 cifre alfanumeriche casuali (come scritto da Sonounostrinato) e poi se all'utente non piace al primo login se la cambia.... semplice è semplice, anche se la password fosse difficile da ricordare (e dovrebbe esserlo se non la si è creata da soli) basta un copia incolla dalla mail la prima volta....
    Questo poi è il sistema standard di forum e portali vari.

    Se dovessi implementare un sistema più sicuro (non per un forum o un sito normale) imporrei che al primo login, dopo il recupero/generazione password provvisoria, venga cambiata per forza, in modo che quella sulla mail non sia più valida dopo usata.

  4. #4
    OK avete ragione.

    Che metodo mi consigliate per generare una password casuale di 8 caratteri?
    Grazie

  5. #5
    Ci sono vari sistemi, anche un rand semplice oppure una semplice funzione artigianale tipo

    Codice PHP:
    function idRand($maxCaratteri=32$sistema){

    if (
    $sistema=="up"){
        
    $newid=" ";
        for ( 
    $k=1;$k<=$maxCaratteri;$k++ )
        {
            if ( 
    $k )
            {
                if ( 
    rand0,200 ) <= 100 )
                {
                    
    $newid .= chrrand 65,90 ) );
                }
                else
                {
                    
    $newid .= chrrand 97,122 ) );
                }
            }
            else
            {
                
    $newid .= rand0,);
            }
        }
        return 
    $newid;
    }

    elseif (
    $sistema=="down"){
          
    $newid=" ";
            
    $rand mt_rand(032);
          
    $newid md5($rand time());
            return 
    substr($newid0$maxCaratteri);
        }


    Se la richiami con down

    Codice PHP:
    $password=idRand(8"down"); 
    ti genera una password alfanumerica con le lettere tutte in minuscolo
    se la richiami con up
    Codice PHP:
    $password=idRand(8"up"); 
    ti genera una password alfanumerica con lettere maiuscole e minuscole (meglio in questo caso)

  6. #6
    E' perfetta
    Grazie Ermopoli

  7. #7
    io ti consiglio un generatore di password più semplice:

    Codice PHP:
    $password_casuale MD5(microtime());
    $password_casuale str_shuffle($password_casuale);
    $password_casuale substr($password_casuale08); 
    Con microtime() generi un numero sempre diverso (è il timestamp del momento esatto in cui si richiama la funzione).
    Questo numero lo codifichi MD5 (quindi crei unastringa alfanumerica) e poi mescoli i vari caratteri con str_shuffle().
    Una volta che i caratteri sono mescolati, ne prendi i primi 8 e li invii come password casuale.

    Semplice no??? Tre righe di codice, creata una password: metodo Alcio!

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  8. #8
    Sempre con lettere minuscole però, in quel caso basterebbe il "mio" eleseif che è anche 3/4 righe di codice.

    Sia chiaro, non è una competizione, giusto per parlare, quella è una funzione che uso per diversi scopi e quando serve come password utilizzando anche le lettere maiuscole aumenta di molto le combinazioni possibili.


  9. #9
    ma invece di inviare una "password" perché non inviare un codice per accedere ad una pagina dove l'utente inserisce la sua password? è molto più userfriendly

    sia invia via e-mail un link con appeso un hash md5 che fa riferimento alla propria richiesta di password e si accede per cambiarla
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  10. #10
    Originariamente inviato da daniele_dll
    ma invece di inviare una "password" perché non inviare un codice per accedere ad una pagina dove l'utente inserisce la sua password? è molto più userfriendly

    sia invia via e-mail un link con appeso un hash md5 che fa riferimento alla propria richiesta di password e si accede per cambiarla
    Di solito i sistemi in circolazione ti mandano il link, con questo poi se tu clicchi ti genera la password e te la manda per mail.

    Ok sul secondo passaggio si potrebbe anche invece che mandare la password mandare una pagina in cui te la puoi modificare, però i passaggi rimangono gli stessi anzi se consideriamo che uno nel primo sistema è opzionale........:

    richiesta password perduta
    clicco per confermare che sono tizio di tale mail
    la nuova password mi arriva per mail
    accedo
    opzionale cambio password

    con il sistema Daniele

    richiesta password perduta
    clicco per confermare che sono tizio di tale mail
    mi arriva per mail il nuovo link hash
    cambio password
    accedo

    Di contro debbo dire che se le cose di login, password etc.... si fanno in https è a primo acchito (in sostanza è uguale) molto più sicuro il metodo due perchè non viene mai consegnata in mail la password, male che che vada se mi accorgo che la password è stata cambiata vuol dire che qualcuno accede alla mia mail, con il sistema numero uno se qualcuno accede alla mia mail ha la mia password (però se la cambio, è lo stasse dell'altro metodo) e io non me ne accorgo.

    Insomma secondo me sostanzialmente si equivalgono sia come passaggi che come sicurezza, forse quello di Daniele costringe l'utente a cambiare password (che non arriva in mail) e quindi ha un piccolo vantaggio con gli utonti.

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.