Back to top

Autore Topic: [RISOLTO] Verifica email  (Letto 2521 volte)

Offline ilnavigatore

  • Esploratore
  • **
  • Post: 180
  • Sesso: Maschio
  • Buon vento a tutti
    • Mostra profilo
[RISOLTO] Verifica email
« il: 14 Apr 2016, 22:19:06 »
Ciao a tutti,
Sto creando un piccolo componente per gestire la verifica dell'email per gli utenti che inseriscono un annuncio nel mio sito.
Vorrei utilizzare all'incirca lo stesso sistema che viene utilizzato da sistema per la validazione dell'utente.
Quindi creazione del token ed invio tramite email.
Quello che non mi è chiaro è come venga pescato il token, ho sbirciato in giro in com_user\controller.php e nel models\registrations.php e non c'è un getVar($token)...
Sono curioso di sapere come viene gestita la cosa?
Scusate se faccio domande stupide, ma mi piace capire le cose fino in fondo.
Grazie
« Ultima modifica: 15 Apr 2016, 13:50:53 da ilnavigatore »
Non sempre la rotta più breve è la migliore...
annunci nautici gratuiti

Offline oncelot

  • Esploratore
  • **
  • Post: 59
    • Mostra profilo
Re:Verifica email
« Risposta #1 il: 14 Apr 2016, 22:30:14 »
Onestamente non lo so nemmeno io ma guarderò, ma cosa ne pensi di generare un md5 sulla data-orario, menorizzi sul db e invii per email e poi fai un confronto..

Offline ilnavigatore

  • Esploratore
  • **
  • Post: 180
  • Sesso: Maschio
  • Buon vento a tutti
    • Mostra profilo
Re:Verifica email
« Risposta #2 il: 14 Apr 2016, 22:44:41 »
Ciao oncelot, si alla fine si tratta di fare quello però vorrei capire come fare il get del token in maniera abbastanza sicura. E poi sono curioso di sapere come funziona.
Non sempre la rotta più breve è la migliore...
annunci nautici gratuiti

Offline MariaElenaBoschi

  • Appassionato
  • ***
  • Post: 469
    • Mostra profilo
Re:Verifica email
« Risposta #3 il: 15 Apr 2016, 08:52:48 »
Il token è una sicurezza per evitare request forgery quindi necessita di essere non prevedibile.
Data e ora oltre a essere prevedibile non è univoco. Lo sarebbe usando microtime ma saresti costretto a mettere in cache il token perchè non più riproducibile (un attimo dopo cambierebbe l'hash).

Per sapere da dove viene basta un ide di sviluppo.
In Joomla 3.5 credo venga usata una libreria hash di terze parti
mancano 2 giorni alla mia prematura dipartita, saluti a tutti, meb.

Offline giovi

  • Instancabile
  • ******
  • Post: 9835
  • Sesso: Maschio
    • Mostra profilo
Re:Verifica email
« Risposta #4 il: 15 Apr 2016, 10:38:28 »
Per generarlo seguendo la prassi di joomla puoi seguire queste indicazioni: https://docs.joomla.org/How_to_add_CSRF_anti-spoofing_to_forms

Se vuoi sapere come viene realmente implementato segui il consiglio di MariaElenaBoschi di utilizzare una buona IDE che ti riporta alla definizione del metodo che lo genere (scoprirai che è nel file libraries/joomla/session/session.php)

Codice: [Seleziona]
    /**
     * Create a token-string
*
     * @param   integer $length Length of string
*
     * @return  string  Generated token
*
     * @since   11.1
*/
    protected function _createToken ($length = 32)
{
        static $chars = '0123456789abcdef';
        $max = strlen($chars) - 1;
        $token = '';
        $name = session_name();

        for ($i = 0; $i < $length; ++$i)
{
            $token .= $chars[(rand(0, $max))];
}

        return md5($token . $name);
}

Offline ilnavigatore

  • Esploratore
  • **
  • Post: 180
  • Sesso: Maschio
  • Buon vento a tutti
    • Mostra profilo
Re:Verifica email
« Risposta #5 il: 15 Apr 2016, 12:26:23 »
Ciao e grazie per le risposte!!
Come generarlo sono riuscito a capirlo, è come "pescarlo" dal link che invio tramite email che non mi è chiaro. Perche dovrei richiamare un task del mio componente, pescare il token e confrontarlo per confermare la verifica dell'email. Potrei anche fare un semplice getVar ma ne risentirebbe la sicurezza.
Non sempre la rotta più breve è la migliore...
annunci nautici gratuiti

Offline ilnavigatore

  • Esploratore
  • **
  • Post: 180
  • Sesso: Maschio
  • Buon vento a tutti
    • Mostra profilo
Re:Verifica email
« Risposta #6 il: 15 Apr 2016, 13:50:22 »
Ciao giovi,
grazie mille il documento che hai inserito mi da tutte le risposte!!
Grazie ancora

Non sempre la rotta più breve è la migliore...
annunci nautici gratuiti

 



Web Design Bolzano Kreatif